这个报错:function declaration isn't a prototype 如何解决?
./ir.c:45: warning: function declaration isn't a prototypehttp://cache.amobbs.com/bbs_upload782111/files_6/armok01117327.jpg
虽然不是error,但总不顺眼.
应该如何解决?
-----此内容被xggz_wb于2006-05-13,23:49:42编辑过 你那个 return(ir_value); 的括号去掉试试 去掉也还是一样 *.c和*.h函数不同,改一下就好了 两种都试了,都有这个报错
*.c和*.h,,请问这两种文件的区别是什么?
谢谢指点. 我也想知道怎么解决这个问题。我只有*.c文件,*.h *.c和*.h函数不同
比如在*h文件里声明一个函数为:
extern void Fun(void);
但是你在*c里对应的函数类型和在*h声明的类型不一样:
unsigned char Fun(void)
{
***********//应用程序
} *.c和*.h函数不同
比如在*h文件里声明一个函数为:
extern void Fun(void);
但是你在*c里对应的函数类型和在*h声明的类型不一样:
unsigned char Fun(void)
{
***********//应用程序
}
-----------------但是该程序只有一个main.c文件丫,没有对应的main.h 该程序为新手入门的外部中断范例,只有一个main.c文件,没有对应的.h文件,依然会碰到这样的问题。 (void) 的问题
如果 函数xxxxxx(void)括号里面没有加void就会出现此警告。 unsigned char IR_0038()是错误的
应该为:unsigned char IR_0038(void) 估计是C99标准造成的吧?
同意9楼和10楼。
这也说明一个问题:写程序时要按编译器遵循的语言标准。
页:
[1]