ヘッダーファイルbuildTree.h
とCファイルbuildTree.c
があり、ヘッダーファイルに構造体typedefがあり、構造体メンバーの1つを列挙型にしたい
ヘッダーファイルコードは次のとおりです。
#define TREE_ITEM_LIMIT 100
typedef enum pType {
none = 0,
bool = 1,
number = 2,
baud = 3
}pType;
typedef struct tree {
// 27 byte size struct
char longName [13];
char shortName [5];
char shortParent [5];
ptype parameterType;
void (* handler)(int);
}tree;
extern tree item[TREE_ITEM_LIMIT];
extern tree defaultValues;
次に、CファイルのparameterTypeメンバーに値を割り当てようとすると、基本的に構造体がかなり厄介であるというエラーのバケットロードが発生します。本当に奇妙なのは、割り当てを再度削除しても、次にコンパイルするときにerrrosが消えないことです。構造体からpTypeメンバーを削除してコンパイルする必要があります。そうすれば、エラーはなくなります。もう一度追加すると、割り当てを再試行するまでエラーは発生しません...
Imがヘッダーの列挙型を正しく使用していないと推測しますが、方法がわかりません...
編集:それが再生されていたが変更がなかった場合に備えて、列挙型のブール値をコメントアウトしてみました