c语言编译器为什么报错,.报错信息如下:\Objects\project.axf: Error: L6200E: Symbol pid_location multiply defined (by pid.o and main.o).

动态 未结 0 146
小小草
小小草 LV1 2023年9月23日 23:40 发表
这个错误是因为在编译过程中,两个不同的源文件(pid.c和main.c)都定义了相同的符号(pid_location),导致链接器无法确定使用哪个定义。解决方法是在其中一个源文件中将该符号声明为extern,表示它已经在另一个源文件中定义过了,例如: // pid.c int pid_location; // 定义符号 // main.c extern int pid_location; // 声明符号已经定义过了 这样就可以避免重复定义符号的问题了。
收藏(0)  分享
相关标签: 智能问答
问题没解决?让AI助手帮你作答 AI助手
0个回复
  • 消灭零回复