我在项目中使用2个.c和.h文件,
其中,在a.h文件中定义了结构体,在b.h文件中也定义了结构体,我在a.h头文件中引用了b.h的结构体,并且包含了b.h头文件,但是编译报错:说我a.h中引用b.h的结构体未定义,我包含了,还是报错,请问是什么情况?弄的很无解啊,同样的操作我新建1个工程是可以的,但是在我项目工程里面就是这样,是CCS要怎么设置吗?我ccs9.2.
Green Deng:
两个头文件的位置都正确吗?报错的具体内容是什么样的?
user5170101:
回复 Green Deng:
如下结构体都定义了的:
Green Deng:
回复 user5170101:
请问你的项目工程是在哪个版本的CCS上编写的?也是ccs9.2吗?
方便的话可以把工程发过来看一下
user5170101:
回复 Green Deng:
f28069m_FPU.zip
CCS 9.2 编译器版本 TI V18.12.4.LTS
Green Deng:
回复 user5170101:
尝试一下从APP_SleepManage.h中注释/删除#include“ APP_SystemInit.h” 然后相应地移动MOTORSUM再进行编译。
user5170101:
回复 Green Deng:
这是我已经知道的解决方法,但是不是根本解决问题的方式啊,这样我的逻辑会非常乱,不同功能的结构体放在完全不搭边的.h文件,不觉得很奇怪吗,所以还是想从根本解决问题。
Green Deng:
回复 user5170101:
你可以考虑创建一个top level header file,并将MOTORSUM定义在里面。然后根据需要include那个头文件。