新聞中心
本文進(jìn)行對C++編譯環(huán)境說明介紹,但是首先在編譯前,首先遇到的就是環(huán)境問題,這個(gè)問題大大的影響了編程人員和技術(shù)人員的工作效率,那么本文給大家講述一下令人頭疼的C++編譯問題。

創(chuàng)新互聯(lián)長期為成百上千客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺(tái),與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為五原企業(yè)提供專業(yè)的網(wǎng)站設(shè)計(jì)、網(wǎng)站制作,五原網(wǎng)站改版等技術(shù)服務(wù)。擁有十載豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開發(fā)。
源程序作為解釋器輸入,解釋器可能會(huì)把程序轉(zhuǎn)換為內(nèi)部的合適的形式,以取得更大的運(yùn)行速度。解釋器的工作更像人類自身的工作,它處理字符串,并賦于字符串以意義,常見的解釋程序都是腳本語言,如PHP、Perl、ASP和bash等等。
編譯程序
什么是編譯程序?編譯程序和解釋程序一樣,是程序運(yùn)行的一種方式,但卻又與解釋程序是不同的運(yùn)行方式。解釋程序是邊解釋邊執(zhí)行,而編譯程序是編譯之后多次執(zhí)行。比喻來說,我們像一條魚,解釋器會(huì)找來一條魚給你,而編譯器卻會(huì)把一個(gè)網(wǎng)給你,要魚的話自己捉去。
源程序是編譯器的輸入,編譯器把源程序經(jīng)過分析與處理最終轉(zhuǎn)換成一個(gè)可直接執(zhí)行的二進(jìn)制程序。二進(jìn)制程序是機(jī)器可以直接理解并執(zhí)行的指令與數(shù)據(jù)集,此時(shí)我們只需要簡單把程序裝載內(nèi)存,并把CPU的控制交給它就可以了。
一般來解釋程序會(huì)比編譯程序慢許多,因?yàn)榻忉屝枰啻芜M(jìn)行,而編譯卻只是一次進(jìn)行,所以會(huì)省下許多時(shí)間。C++和C語言都典型的編譯程序,隨著計(jì)算機(jī)硬件的發(fā)展,現(xiàn)代的解釋型程序越來越成功和強(qiáng)大,并且已經(jīng)形成一個(gè)很強(qiáng)大的競爭。
C++編譯環(huán)境
C++是一種編譯程序,那么C++的源程序到C++二進(jìn)制程序的轉(zhuǎn)換過程是由哪個(gè)工具來完成的呢?這個(gè)工具就是C++編譯器,正如上面據(jù)說的,C++編譯器讀取源程序,在經(jīng)過分析與處理之后生成可運(yùn)行的二進(jìn)制程序。
C++編譯器及相關(guān)工具構(gòu)成C++編譯環(huán)境,C++編譯環(huán)境可能還存在其它的工具,比如預(yù)處理器、編輯器、設(shè)計(jì)器等等。事實(shí)上存在非常多的編譯環(huán)境,這些編譯環(huán)境各不同,有的非常先進(jìn),有的可能注重易用性。
本手冊自始至終都使用GNU Compiler Collection(GCC)來完成我們工作,GCC是一組編譯器集合,它不僅有C++編譯器g++,還有其它的編譯器或解釋器。它是自由和開放,全世界的人都應(yīng)該使用它,所以也就使用它了。
除了g++之外,還存在intel C++ compiler、IBM C++ compiler,當(dāng)然還最臭名照著了Microsoft Visual C++。它們?nèi)齻€(gè)都商業(yè)軟件,intel公司關(guān)注自身平臺(tái),所以它的編譯器可能只能運(yùn)行在自身平臺(tái)之上,當(dāng)然這種關(guān)注使得它在自身平臺(tái)有許多的優(yōu)勢,比如編譯出來的程序更快等。C++的最初創(chuàng)始人Bjarne Stroustrup維護(hù)了一個(gè)C++編譯器列表,大家可以過去看看。
在示例中,每個(gè)程序都非常簡單,在Linux中使用g++來完成編譯與測試。關(guān)于g++更多的內(nèi)容我們可能在以后的章節(jié)有所涉及,但是不會(huì)有大量篇幅,因?yàn)樵谶@里講述的是C++,而不是g++。如果實(shí)在無法離開Windows,這里有一個(gè)替代方案。
可以下載并安裝Code::Blocks,它是一個(gè)跨平臺(tái)的IDE環(huán)境,此時(shí)你可以不得不先去熟悉這個(gè)IDE環(huán)境要編譯我們上一節(jié)寫作的“hello_world.cpp”程序,其實(shí)很簡單,只要我們在命令行中使用,
就可以了。在運(yùn)行上述命令之后,將生成一個(gè)叫做“hello”的可執(zhí)行程序,為了要運(yùn)行它,我們需要在命令行中使用: 這個(gè)命令就是運(yùn)行剛才生成的程序的命令,注意在“hello”之前的“./”,這表示是當(dāng)前目錄下的“hello”。 大家可以已經(jīng)注意到了,這里我會(huì)使用大量命令行相關(guān)的內(nèi)容,如果你對這個(gè)不熟悉,你應(yīng)該先去熟悉也命令行相關(guān)的內(nèi)容。
網(wǎng)站題目:詳細(xì)述說C++編譯環(huán)境
文章地址:http://m.fisionsoft.com.cn/article/cdpghph.html


咨詢
建站咨詢
