C语言 头文件相互引用的问题

具体是这样的有两个C文件和两个h头文件具体如下a.cb.ca.hb.h其中a.h和b.h中分别定义了一个结构体提分别是在a中定义了a_t,在b中定义了b_t;这时我在b.... 具体是这样的 有两个C文件和两个h头文件 具体如下
a.c b.c a.h b.h其中a.h和b.h中分别定义了一个结构体提
分别是在a中定义了 a_t ,在b中定义了b_t;
这时我在b.c这个C文件中实现了一个函数testb
这个函数需要两个参数 分别是a_t *p1,b_t *p2
在b.h中声明函数void testb(a_t *p1,b_t *p2);
由于在b.h头文件中声明函数时引用了a.h头文件里的a_t这个结构
所以报错了 有什么方法可以避免这种情况吗
展开
 我来答
u无力哀叹丶
2019-03-01 · TA获得超过520个赞
知道小有建树答主
回答量:696
采纳率:64%
帮助的人:343万
展开全部
增加头文件c.h包含a.h,b.h 声明void testb();
在c.c内实现testb();
另外防止头文件被多次包含时重复定义 需要用
#ifndef
#define
````
#endif
来修饰头文件内容 以防止重复编译
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式