C 程式 = 資料 + 函數。函數實現模組化設計,將複雜問題分解為可管理的小單元,符合面向過程程式設計範式。
// 聲明
extern int g_var;
void f(int i, int j);
int g(int x);
// 定義
void f(int i, int j) {
printf("i + j = %d\n", i + j);
}
int g(int x) {
return 2 * x + g_var;
}
int k = 1; f(k, k++); // k++ 何時執行?編譯器決定
序列點為程式執行中「變數修改必須反映到後續存取」的時間點:
&&、||、?:、逗號運算子運算元計算後k = k++ + k++; // 未定義行為:無序列點約束
缺少類型聲明時,C 預設為 int: