Closed. This question is off-topic。它当前不接受答案。
想改善这个问题吗? Update the question,所以它是on-topic,用于堆栈溢出。
2年前关闭。
编译时,我在ANSII C中的小程序给我一个“冲突类型”错误消息。而且我不知道为什么会这样,特别是考虑到我已经在另一个.c文件中测试了相同的情况而没有任何问题的事实。
代码如下:
(...这部分无关紧要,我向您保证...)
因此,“ countNodes”功能确定“ l”(链接列表)中的节点数。然后,该数字返回到“搜索”功能。但是编译器一直在给我一个“冲突类型”错误消息,我不知道为什么...我认为一切都很好并且编写得很好。
感谢所有帮助。提前致谢!
想改善这个问题吗? Update the question,所以它是on-topic,用于堆栈溢出。
2年前关闭。
编译时,我在ANSII C中的小程序给我一个“冲突类型”错误消息。而且我不知道为什么会这样,特别是考虑到我已经在另一个.c文件中测试了相同的情况而没有任何问题的事实。
代码如下:
void search(char *v, Message *l){
long int max;
max=countNodes(l);
(...这部分无关紧要,我向您保证...)
} //end of the "search" function
long int countNodes(Message *l){
long int i=0;
while(l!=NULL){
i++;
l=(l->nseg);
}
return(i);
}
因此,“ countNodes”功能确定“ l”(链接列表)中的节点数。然后,该数字返回到“搜索”功能。但是编译器一直在给我一个“冲突类型”错误消息,我不知道为什么...我认为一切都很好并且编写得很好。
感谢所有帮助。提前致谢!
最佳答案
编译器基本上逐行读取文件。因此,当读取max=countNodes(l);
时,它还不“知道”您的countNodes
函数。
您有两种选择:
将countNodes
函数放在搜索函数之前。
将您的countNode
函数的原型放在search
函数之前(如果您不熟悉,请阅读“ c中的原型”)。
关于c - 冲突类型错误消息,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47335329/
10-12 13:44