枚举类型的用法

时间:2015-10-23 23:22:39

标签: c enums header-files

我正在制作一个包含在头文件中的枚举类型的程序。

enum Type {
    UNKNOWN, STRING, FLOAT, LONG, INT, CHAR
};
typedef enum Type Type_t;

/*
 * Returns the Type_t of the data under the column with the name given. If the
 * column name is not recognized, UNKNOWN is returned.
 */
Type_t column_type(char *column);

在我的程序中,我将其用作

enum  Type_t typeer=column_type(lineRow[headerIndex]);
            if(typeer==LONG)
            {
                *((long *) container[j]) = *((long *)lineRow[headerIndex]);
                long * min,*max;
            }

我在互联网上看过一些例子,并尝试使用技巧。我是enums的新手。请强调我做错了什么。

输出:

main.c:352:19: note: forward declaration of 'enum Type_t'
            enum  Type_t typeer=column_type(lineRow[headerIndex]);
                  ^
main.c:353:24: error: use of undeclared identifier 'LONG'
            if(typeer==LONG)

有时,它说我有不完整的类型枚举Type_t,我尝试过单独使用Type_t但是无法解决

1 个答案:

答案 0 :(得分:0)

请勿使用HTMLBox.Select(Index+1,0);,使用enum Type_tenum Type

Type_tType_t的别名,您的计划中没有enum Type。此外,如果要在标题中声明类型,请确保此标题包含在您使用它的源文件中。