为什么C语言报warning说函数原型找不到

来源:百度知道 编辑:UC知道 时间:2024/06/07 04:42:39
在sms_api.h
里面有这么一个函数声明:
SMS_ERR sms_GetMsgCount();

这个函数是系统提供的一个接口函数,只能看到声明,看不到实现.

然后在sms_main.c中的
include "sms_api.h"后,

在这个c文件的其他地方调用了这个函数.

然后编译器报出了这个warning:
6003: sms_GetMsgCount();
W 91: no prototype for function "sms_GetMsgCount"

有人知道为什么吗?

明明在头文件中有这个函数的声明(这个函数不被其他的宏包含,所以只要include这个头文件,就肯定能找到这个函数声明).

你这个sms_api是个外部库吧,那么它应该不光有一个h文件,还应该有个lib文件什么的,需要把lib文件也放到工程目录中,并且在编译器中设置包含这个lib文件.

同意上解。找到此函数的定义,并将相应的文件或库一起编译或连接。