在未初始化的情况下使用的typedef枚举值



我已经为应用程序的错误代码创建了一个typedef enum。我应该把它放在哪里?项目中所有文件识别它的最佳方式是什么?

例如

typedef enum error_Codes{
ERROR1,
ERROR2,
...
}APP_ERRORS;

我想在我所有的.c文件中使用它,以这种方式打印:

iprintf("YOU HAVE ENCOUNTERED ERROR %d", ERROR1);

我需要在所有文件中初始化APP_ERRORS类型的成员吗?有更好的方法吗?

我认为最好的方法是将它放在一个h文件中,并包含在c文件中。

这样,如果修改枚举中的值,则更改将应用于所有c文件。

通常将枚举放入头文件.h中(仅一次)。您将在.c:中像这样添加的头文件

#include "my_header.h"

您不需要为枚举赋值,但它将从0开始,每次添加枚举时都会增加1

typedef enum error_Codes{
ERROR1, // = 0
ERROR2, // = 1
...     // = ERROR2+1 etc etc
}APP_ERRORS;

如果你想让这个枚举为负数,你必须给它分配一些值

但是,为了可读性,建议为枚举赋值。

最新更新