当前位置: 代码迷 >> C语言 >> [求助]求助 求助哦~~~
  详细解决方案

[求助]求助 求助哦~~~

热度:149   发布时间:2005-09-19 14:24:00.0
[求助]求助 求助哦~~~
编译后出现
warning: implicit declaration of funtion "xxx"
我之前定义了宏 #define  XX   xxx
程序能运行 但是想去掉这个 警告
该怎么弄啊

是不是 要声明下啊
该怎么声明啊  要全局都可用的

谢谢各位 help
----------------解决方案--------------------------------------------------------
其他函数调用xxx函数前声明之。声明的时候 return-type XX(parameter -list);试试
----------------解决方案--------------------------------------------------------
不行  +了 反而出现错误...

程序是在linux下的c语言写的

平时定义的宏 好像都不说要声明什么的啊... ...

那个xxx的程序 是写在别的地方的 用头文件include的了

不知道为什么
----------------解决方案--------------------------------------------------------
不是 也没有在头文件里include  
只是define 了 下 不知道怎么联系的

[此贴子已经被作者于2005-9-19 15:49:08编辑过]



----------------解决方案--------------------------------------------------------
宏不用声明,但是函数要声明呀。
----------------解决方案--------------------------------------------------------
如何声明呢  比如有个函数   int  abc_printf(xxxx) 写在abc.c里
abc.h里有说明

我在别的地方 #define abc  abc_printf

使用  abc(xxx)可以 使用
但是有那个警告


还有 我问下  .h文件  就是头文件 最上边的  那行#define  ........... 是用 来做什么的 声明么?
还仅仅是注释说明性质的
----------------解决方案--------------------------------------------------------
你要把函数的定义文件包含进来。

.h文件的#define那一行的具体内容是什么?一般都会放一些防止重复包含的量
----------------解决方案--------------------------------------------------------
恩 不错
包含了头文件
然后 定义了宏就可以了

#define _MAINMENU_H

是不是就是说明性质的呢?
----------------解决方案--------------------------------------------------------
对了  在一个工程里边是不是不包含头文件  也不影响编译呢

我在这个工程里边  发现 很多程序开始并没有包含一些头文件,就直接使用了那些函数
结果仍然可以运行
----------------解决方案--------------------------------------------------------
不管包不包含头文件,程序要运行就必须遵循C的规则,比如变量必须先声明然后再用,函数在使用前必须声明或者直接有函数的实现。当然,如果你的编译器特殊的话,一些函数是可以不用包含头文件而直接调用的,但是建议你遵守C的规则
----------------解决方案--------------------------------------------------------
  相关解决方案