为什么头文件中的变量会出错?

时间:2015-08-03 09:53:41

标签: c variables header-files

My Header文件test.h包含两个定义为:

的变量
 #ifndef TEST_H_
 #define TEST_H_

 #define APPS 6;
 #define NODES 1;

 #endif;

我使用另一个名为test2.h的头文件,如下所示:

#include"test.h"
typedef struct {
       uint8 State[APPS];
} AppState;

但我在test.h文件中输入错误

expected ']' before ';' token

由于没有括号,我不知道为什么会出现这个奇怪的错误。有人可以指出我的错误。谢谢你

1 个答案:

答案 0 :(得分:7)

最后不要用;定义常量:

#define APPS 6
#define NODES 1

否则这一行:

 uint8 State[APPS]; 

成为这个:

 uint8 State[6;];

显然没有令人满意。您可以将#define视为“搜索和替换”。