Include文件易犯编译错误

在cms.h文件中添加结构体变量后,编译总是报include文件编译错误,如下:

In file included from /.../public/include/cms_other.h:41:0,
                 from /.../public/include/linux/os_common.h:43,
                 from vlanctl_api.c:57:
/.../public/include/cms.h:508:4: error: unknown type name ‘UBOOL8’
/.../public/include/cms.h:509:4: error: unknown type name ‘UBOOL8’


问题真相:
cms.h中增加的变量有用到UBOOL8,其在os_common.h中的封装定义,
cms.h文件开头添加如下头文件引入:
#include "os_common.h"

os_common.h文件开头有添加引入头文件cms_other.h, 并在后面定义UBOOL8:
#include "cms_other.h"
....
....
typedef uint8_t    UBOOL8;

cms_other.h文件中又有引入头文件cms.h:
#include "cms.h"
问题关键就在这里,该处循环重复引用的cms.h中的UBOOL8还未定义,所以导致编译不过。




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值