我使用enum在C中使用以下代码在头文件中包含布尔变量:
enum myBool { FALSE = 0, TRUE = 1}; typedef enum _myBool Bool;
然后我用:extern Bool low;
然后当我尝试使用.c
在另一个Bool low = FALSE
文件中将变量初始化为false时,我得到错误变量'low'有初始化程序但是类型不完整。
我该如何解决这个问题?非常感谢!!
答案 0 :(得分:1)
您已将枚举定义为myBool
而不是_myBool
,因此您需要更改
typedef enum _myBool Bool;
到
typedef enum myBool Bool;
答案 1 :(得分:0)
然后我用:
定义了一些全局Bool变量extern Bool low
;
所以你已经在另一个文件中声明了它。否则你会得到链接器错误