最經典的第一支程式,展示從原始碼到可執行檔的完整流程。
/* hello.c */
#include <stdlib.h>
#include <stdio.h>
int main(void) {
printf("Hello World!\n");
exit(0);
}
$ gcc -o hello hello.c $ ./hello Hello World!
gcc:GNU Compiler Collection,預設執行「前處理 → 編譯 → 組譯 → 連結」全流程。-o hello:指定輸出可執行檔名稱。若省略,預設產生 a.out(Assembler Output 歷史遺留名稱)。./hello:當前目錄不在 PATH 中,必須加 ./ 執行。| 選項 | 用途 |
|---|---|
-Wall | 開啟所有常見警告 |
-g | 產生除錯資訊(供 gdb 使用) |
-O2 | 優化等級 2(發布建議) |
-std=c11 | 指定 C 標準版本 |
-c | 僅編譯不連結,產生 .o 目標檔 |