C warning: function declaration isn’t a prototype

来源:互联网 发布:黑客数据库 编辑:程序博客网 时间:2024/05/17 05:50

在C编译时,有时会出现这样的警告:“ warning: function declaration isn’t a prototype”。这是因为函数原型和调用这个函数时产生了冲突,如参数类型不一样等。在C中最常见的情况:

int my_fn(){     ...;}int main(void){    ...;    my_fn();    ...;    return 0;}

这时会出现了 的警告,因为在C语言中my_fn() 和 my_fn(void)是不一样的,前者可以接受任意参数,而后者不接受任何参数。所以作如此修改:

int my_fn(void){     ...;}int main(void){    ...;    my_fn();    ...;    return 0;}

警告消失。

ref:http://stackoverflow.com/questions/42125/function-declaration-isnt-a-prototype

0 0