冲突类型错误消息

时间:2017-11-16 17:02:49

标签: c types

我在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”(链表)中的节点数。然后,该号码返回“搜索”功能。但编译器不断给我一个“冲突类型”错误信息,我不知道为什么......我认为一切都很好,写得很好。

感谢所有帮助。提前谢谢!

1 个答案:

答案 0 :(得分:3)

您的编译器基本上逐行读取您的文件。因此,当它显示max=countNodes(l);时,它还不会“知道”您的countNodes功能。

您有两种选择:

  • countNodes功能放在搜索功能之前。

  • countNode函数的原型放在search函数之前(如果您不熟悉,请阅读“c中的原型”)。