所以,我有这个c模块,其中我修改了两件事:在函数中添加了一个参数,并在结构中添加了一个参数。
问题在于,当使用cc(从我继承的脚本)进行编译时,无论我的更改在哪里都会出现错误消息(对不起,如果翻译不准确):
error: too many arguments for 'function_that_I_added_the_argument' error: struct 'struct_I_added_the_element' doesn't has a member called 'element_I_added'
我已经多次检查了源文件(就好像脚本调用的是旧版本),但一切似乎都没问题。
现在我很无能为力。有什么想法吗?
编辑:为每个受欢迎的请愿书添加部分内容: 我们是:
·文件的路径。
·module1.c我修改过的函数所在的模块。
cc -c //folder/module1.c -Wall -DLINUX -I/ -I//otherFolder -I//include -o //folder/module1.o
我没有包含source,因为它像函数一样简单,struct声明可以是:short int value; (对于struct)和函数的函数(params ...,short param)。
答案 0 :(得分:0)
两年后,我记得自动回答我并将其标记为已解决,因此,请从我自己的编辑中复制粘贴:
解决:
终于找到了问题...
a)项目声明了两个结构(struct petecander和struct structPetecander),编译器告诉我“struct structPetecander”没有structPetecander元素。当然它没有它,因为它是另一个有相似名字的结构。
b)我得到了“函数_that_I_added_the_argument的参数太多”。用Java编程太多时间让我忘记了在C中你必须在函数中声明函数
两条错误消息(隐藏在其他错误之下)给了我一些提示。抱歉翻译错误:/module.c :: error:/headers.h的冲突类型::错误以前的声明是在这里
我想是时候去角落哭了。