单片机c语言中函数的相互调用 工程中有三个文件1.c 2.h 3.h

在1.c里边已经用#include包含了2.h 3.h 两个头文件
我在写3.h这个头文件时 需要调用2.h里边的一个函数,
于是在3.h里边没有做任何调用语言 就直接调用了2.h里边的函数
编译的时候出错了。那位大侠知道 语法那块有问题的 多谢赐教

第1个回答  2012-04-26
这个是你的写法错误导致的
正规的写法是*.h 文件里是不能包含函数实现代码的,只能有函数的申明,别如a.c里面有a()这个函数,那么只要在a.h里面申明这个函数,如果那个代码文件要调用a()就只要包含a.h就可以了,不知道你是否明白了 。。
第2个回答  2012-04-26
你如果在3.h里面调用2.h里面的函数,你应该在3.h文件里面说明使用2.h。
即加上#include "2.h"。
第3个回答  2012-04-26
在 3.h里面用extern外部变量或者函数声明:

entern void SUB(); //sub()是你要调用的函数,另外楼上的不是*.h里只能声明,也可以实现功能代码!本回答被提问者和网友采纳
第4个回答  2012-04-26
-- -
相似回答