【发布时间】:2015-07-31 14:01:40
【问题描述】:
我在 C 中创建了一个包含枚举“应用程序”的 .h 文件。这个枚举值需要在 main.c 程序中访问。我的代码如下所示:
state.h file
#ifndef State_H_
#define State_H_
#define enum app {A,D,H};
#endif
我的主要程序是:
#include <stdlib.h>
#include <stdio.h>
#include "State.h"
char letters[] ={'AAAA'};
if( letters[0] ==State.app[0])
{
printf("the first letter is matching");
}
但是在 if 语句中 State.app[0] 给出了一个错误
错误:无法解析状态, 应用无法解析。
请有人建议我可以从头文件中访问枚举值的方法。请注意 int main 和 return 是程序的一部分。我只是没有将它们包括在这里。 提前感谢您的帮助。
【问题讨论】:
-
您是否(不)收到任何警告?
-
@SouravGhosh:不。我只是得到这个错误。没有警告。
-
不要对全局对象使用单个字符的名称!
-
仔细看
'AAAA'.... -
And..
#define enum ....是一个非常奇怪的结构。好吧,@Olaf 说的。