自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

在Linux系統(tǒng)上運(yùn)用強(qiáng)大的C/C++編譯器

開發(fā) 后端
Linux中最重要的軟件開發(fā)工具是 GCC.GCC是 GNU的 C和 C++編譯器很強(qiáng)大的C/C++編譯器,通過編譯器可以編譯連接C++源程序。

上回在編譯過程中,發(fā)現(xiàn)C++編譯器是一個(gè)很強(qiáng)大的C/C++編譯器,該編譯以速度快、空間效率高為他的特點(diǎn),它的版本對(duì)標(biāo)準(zhǔn)化C++的支持達(dá)92.73%,大大的支持了CPU優(yōu)化工作。

如果你有兩個(gè)或少數(shù)幾個(gè)C 源文件,也可以方便地利用GCC 編譯、連接并生成可執(zhí)行文件。例如,假設(shè)你有兩個(gè)源文件 main.c 和 factorial.c兩個(gè)源文件,現(xiàn)在要編譯生成一個(gè)計(jì)算階乘的程序。

清單 main.c

  1. #include   
  2. #include   
  3. int factorial (int n);  
  4. int main (int argc, char **argv)  
  5. {  
  6. int n;  
  7. if (argc < 2) {  
  8. printf ("Usage: %s n ", argv [0]);  
  9. return -1;  
  10. }  
  11. else {  
  12. n = atoi (argv[1]);  
  13. printf ("Factorial of %d is %d. ", n, factorial (n));  
  14. }  
  15. return 0;  
  16. }  

GCC 可同時(shí)用來(lái)編譯 C 程序和 C++ 程序。一般來(lái)說,C 編譯器通過源文件的后綴名來(lái)判斷是 C 程序還是 C++ 程序。在 linux 中,C 源文件的后綴名為 .c,而 C++ 源文件的后綴名為 .C 或 .cpp。

但是,gcc 命令只能編譯 C++ 源文件,而不能自動(dòng)和 C++ 程序使用的庫(kù)連接。因此,通常使用 g++ 命令來(lái)完成 C++ 程序的編譯和連接,該程序會(huì)自動(dòng)調(diào)用 gcc 實(shí)現(xiàn)編譯。假設(shè)我們有一個(gè)如下的 C++ 源文件(hello.C):

  1. #include   
  2. void main (void)  
  3. {  
  4.  cout << "Hello, world!" << endl;  

則可以如下調(diào)用 g++ 命令編譯、連接并生成可執(zhí)行文件:

  1. $ g++ -o hello hello.C   
  2. $ ./hello   
  3. Hello, world!   

其它的編譯器如:Intel C/C++大家一看名稱就知道是Intel的東西,它和VC6完全兼容,不過要掛在VC6下才能用。Watcom C/C++是早先編譯器四國(guó)大戰(zhàn)中的一員,原本是很不錯(cuò)的東西,可惜戰(zhàn)略不對(duì),現(xiàn)在已不見聲息了。倒是以它為基礎(chǔ)的一個(gè)OpenWatcom現(xiàn)在還在奮戰(zhàn)。

VectorC是我近日才發(fā)現(xiàn)的一個(gè)好東東,它是個(gè)純C的編譯器。IBM的VisualAge for C++原本是IBM想用來(lái)淌強(qiáng)大的C/C++編譯器這片渾水的東西,不過IBM的戰(zhàn)略改了,它就被放棄了。DigitalMars C/C++的前身的Symantec C++(它也是編譯器四國(guó)大戰(zhàn)中的一員),不過現(xiàn)在Symantec不做了。

于是它的作者就把它改成了DigitalMars C/C++開放給大家使用。以上這些都是WIN32平臺(tái)上的東西。KAI C/C++是個(gè)很強(qiáng)大的C/C++編譯器,它是個(gè)多平臺(tái)的編譯器。不過現(xiàn)在被INTEL收購(gòu)了,已經(jīng)停止開發(fā)了。Lcc4.1是個(gè)純C的編譯器它是開放源代碼的。

不過不怎么好用。LCC-WIN32是一個(gè)在LCC基礎(chǔ)上開發(fā)的C語(yǔ)言的集成開發(fā)環(huán)境,很好用,而且有很詳細(xì)的資料,F(xiàn)REE!Pacific C是一個(gè)純DOS的C的集成開發(fā)環(huán)境,就不多說了。Small C CC386都是開放源代碼的強(qiáng)大的C/C++編譯器,它們都很簡(jiǎn)單。應(yīng)用來(lái)給大家學(xué)習(xí)編譯器的。Quincy Eic CINT都是C的解釋器,是用來(lái)讓大家學(xué)習(xí)C語(yǔ)言的其中CINT的功能很強(qiáng)大,還支持一些C++的特性。

【編輯推薦】

  1. C與C++中標(biāo)準(zhǔn)輸入實(shí)現(xiàn)方式上的一點(diǎn)區(qū)別
  2. C++編譯器如何對(duì)Const常量進(jìn)行分配存儲(chǔ)空間
  3. C++類庫(kù)設(shè)計(jì)的基本構(gòu)思與方法
  4. 玩轉(zhuǎn)C++語(yǔ)言的幾種方法
  5. 如何更好的進(jìn)行C++代碼編制
責(zé)任編輯:chenqingxiang 來(lái)源: 人民郵電出版社
相關(guān)推薦

2010-10-20 13:43:37

C++編譯器

2010-01-18 10:34:21

C++編譯器

2010-01-21 09:11:38

C++編譯器

2010-01-18 10:28:15

C++編譯器

2010-01-12 16:42:59

C++編譯器

2010-01-27 14:48:55

優(yōu)秀C++編譯器

2010-01-21 09:26:53

CC++編譯器

2010-01-14 15:29:44

C++編譯器

2010-02-03 13:14:03

C++編譯器命令

2013-03-18 09:42:47

C++C++ 11

2010-01-27 16:39:48

C++編譯器

2010-01-08 16:00:46

C++編譯器

2009-01-12 10:16:11

Visual C++編譯器選項(xiàng)設(shè)置

2010-01-14 14:55:14

C++編譯器

2010-06-04 17:37:45

Linux編程工具

2014-03-03 10:00:53

編譯器集成開發(fā)環(huán)境

2023-11-15 17:58:58

C++代碼

2015-03-23 10:04:43

c++編譯器c++實(shí)現(xiàn)原理總結(jié)

2023-12-07 19:19:21

C++模板代碼

2012-02-09 09:14:32

C++
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)