運行環境以Dev-C++、MacOS命令行和Xcode為主
1.語法錯誤
error: expected ';' before '}' token
error: expected identifier or '(' before 'xxx'
error: unknown type name 'integer'
![]()
![]()
![]()
- 錯誤類型:代碼不符合 C 語言語法規則
- 解決方法
- 檢查標點符號是否為英文格式,是否遺漏
- 確認變量聲明、函數定義、循環 / 條件語句結構是否正確(如 if/for/while 的括號和花括號配對)
- 避免在關鍵字或函數名中使用非法字符
2.未定義標識符
error: 'printf' undeclared (first use in this function)
error: 'num' undeclared (first use in this function)
![]()
![]()
![]()
![]()
- 錯誤類型:使用未聲明的變量、函數或類型
- 解決方法
- 確認變量是否已聲明,如忘記寫
int a;
- 檢查拼寫是否正確,如變量名
number 誤寫為 numbre
- 函數調用前需聲明原型或者在函數調用前定義函數,或在頭部添加聲明,如
int func();
3.類型不匹配
error: incompatible type for argument 'x' of 'function'(函數參數類型不匹配)
error: assignment from incompatible pointer type(指針類型賦值錯誤)
![image]()
![image]()
- 錯誤類型:變量類型、函數參數或返回值類型不一致
- 解決方法
- 檢查函數參數類型是否與定義一致(如函數期望 int,卻傳入 char)
- 賦值時注意類型轉換(如 int a = (int)3.14;)
- 指針操作時確保指向正確類型(如 int* p = &a;,而非 char* p = &a;)
4.頭文件包含錯誤
fatal error: 'xxx.h' file not found(頭文件未找到)
![image]()
- 錯誤類型:頭文件路徑錯誤、內容損壞或重復包含
- 解決方法
- 確認頭文件名稱是否正確(如 #include <stdio.h> 而非 stdio.h)
- 自定義頭文件使用雙引號 #include "myheader.h",并確保路徑正確
5.缺少函數原型
warning: implicit declaration of function 'function'(隱式聲明函數,可能導致編譯錯誤)
![image]()
- 錯誤類型:調用函數前未聲明或定義函數
- 解決方法
- 在函數調用前添加函數聲明(如 int func(int a);)
- 將函數定義放在調用語句之前