C语言程序常见错误汇总(更新中...)

运行环境以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);)
    • 将函数定义放在调用语句之前
posted @ 2025-05-21 08:30  pycoder_666  阅读(609)  评论(0)    收藏  举报