由GCC了解C語言,學習筆記 | 台灣精品獎-歷屆得獎名單
嚴格說起來,gcc並不是編譯器,由他的全名GUNCompilerCollection可知道他是種編譯器套裝,概念上更像是種Compilerdriver,gcc可以啟動連接器(linker),組譯器(assembler) ...
gcc這邊將介紹如何使用gcc將C語言程式碼編譯成可執行程式,以下將會介紹編譯的過程,程式控制的基本選項和參數,gcc警告選項,編譯器優化等... gcc(GNU Compiler Collection)為跨平台編譯程式,作用為把.c檔編譯成一個執行檔,總共會執行以下四個步驟
預處理(preprocessing),產生 .i 的檔案 編譯(compiling)將預處理的檔案組譯成組合語言, 產生 .s 的檔案 組譯(assembling)將組合語言變成機器碼 .o 的檔案 連接(linking)連接函式庫與其他檔案,產生可執行檔 而gcc發展至今,不僅支援C語言,有支援C++, Java, Objective-C等等,因此,gcc由原本GNU C Compiler,逐漸轉變為GNU Compiler Collection。嚴格說起來,gcc並不是編譯器,由他的全名GUN Compiler Collection可知道他是種編譯器套裝,概念上更像是種Compiler driver,gcc可以啟動連接器(linker),組譯器(assembler)等元件。
使用gcc編譯C語言程式執行gcc時,預設是將一個檔案產生一個可執行檔案,如以下範例
$ gcc -Wall hello.chello.c的檔案內容如下
#include <stdio.h> int main(void) { printf("Hello World"); }上面的指令包含了編譯器名稱gcc,來源檔案hello.c,和編譯選項-Wall,-Wall表示編譯器會跳出警告訊息。如果hello.c沒有語法錯誤,則gcc執行完畢後會退出,並產生一個名稱為a.out的可執行檔案(如果在windows平台則為a.exe),我們可以直接執行這個文件
$ ./a.out輸出結果
Hel...GCC | 台灣精品獎-歷屆得獎名單
GCC 下載安裝與基本使用教學 | 台灣精品獎-歷屆得獎名單
GCC是什么? | 台灣精品獎-歷屆得獎名單
什麼是GCC?GCC有什麼作用? | 台灣精品獎-歷屆得獎名單
由GCC了解C語言,學習筆記 | 台灣精品獎-歷屆得獎名單
103 年度台灣精品獎獲獎產品 噴切一體機
由「星雲電腦股份有限公司」生產的噴切一體機獲得103年度台灣精品獎,以下為此獎項詳細資料整理:得獎產品:噴切一體機獎項...
109 年度台灣精品獎獲獎產品 Laser engraver and cutter
由「星雲電腦股份有限公司」生產的Laserengraverandcutter獲得109年度台灣精品獎,以下為此獎項詳細資料整理:得獎產品:Las...
106 年度台灣精品獎獲獎產品 JF-240UV平板噴墨印刷機
由「星雲電腦股份有限公司」生產的JF-240UV平板噴墨印刷機獲得106年度台灣精品獎,以下為此獎項詳細資料整理:得獎產品:JF-...
102 年度台灣精品獎獲獎產品 GCC LaserPro X500II 雷射切割機
由「星雲電腦股份有限公司」生產的GCCLaserProX500II雷射切割機獲得102年度台灣精品獎,以下為此獎項詳細資料整理:得獎產品...
103 年度台灣精品獎獲獎產品 雷射雕刻切割機
由「星雲電腦股份有限公司」生產的雷射雕刻切割機獲得103年度台灣精品獎,以下為此獎項詳細資料整理:得獎產品:雷射雕刻切...