前言:C語言的應用范圍廣泛,具備很強的資料處理能力,不僅僅是在軟體開發上,而且各類科研都需要用到C語言,適于撰寫系統軟體,三維,二維圖形和影片,具體應用比如單片機以及嵌入式系統開發,
Linux 系統中最重要的軟體開發工具是 gcc,在 Linux 系統中,c89、cc 和 gcc 這些命令基本上都指向系統的C語言編譯器,通常是GNU C編譯器,或都簡稱 gcc,在 UNIX 系統中,C 語言編譯器稱為 cc,實際上,gcc 能夠編譯三種語言:C、C++ 和 Object C(C 語言的一種面向物件擴展),利用 gcc 命令可同時編譯并連接 C 和 C++ 源程式,一般來說,C 編譯器通過源檔案的后綴名來判斷是 C 程式還是 C++ 程式,

在 Linux 中,C 源檔案的后綴名為 .c,而 C++ 源檔案的`后綴名為 .C 或 .cpp,對于 C++ 程式,gcc 命令只能編譯 C++ 源檔案,而不能自動和 C++ 程式使用的庫連接,因此,通常可以使用 g++ 命令來完成 C++ 程式的編譯和連接,該程式會自動呼叫 gcc 實作編譯,本人一直都是在 Linux系統編譯 C程式的,就 gcc 命令列的作用記錄下來,
首先通過撰寫、編譯和運行一個 HelloWorld 程式實體開始
一、源代碼
/* hello.c */
#include
#include
int main(void)
{
printf("Hello World!");
return 0;
}

二、 編譯、鏈接和運行程式
#gcc -o hello hello.c
#./hello
Hello World!
#
命令選項的作用:
1. -o Place the output into
如:#gcc -o file file.c
-o 告訴編譯器將可執行程式放在何處,如果沒有指定檔案名稱,編譯器則會把程式放在一個名為a.out的檔案里(a.out的含義是 assembler output,即匯編輸出),
2. -c Compile and assemble, but do not link
如:#gcc -c file.c
-c 告訴編譯器僅把源代碼編譯為目標模塊(file.o)而跳過匯編和連接的步驟,在使用-c生成目標模塊后,就可以通過-o選項來生成可執行檔案,如:#gcc -o file file1.o file2.o 可以是多個目標模塊,

3. -l和-L
指示編譯器程式要鏈接的庫,其中-L要增加庫的搜索路徑,如:hello.so動態庫放在/usr/cprimer目錄下,那就是 -L/user/cprimer
4. -O
如:#gcc file.c -O2,
用來優化程式用的,優化程式,執行速度可能也有所提高,從未真正測驗過,
5. -include
-include 告訴編譯器需要包含頭檔案,但一般情況下包含頭檔案都在原始碼里用#include xxxxxx實作,一般很少用這個選項,
如果你在學習C/C++的程序中遇到了問題,可以來加入小編的企鵝圈問小編哦~小編很熱情的(●’?’●)
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/203875.html
標籤:C
上一篇:關于java的for回圈
