0

ここにはすでにこれらのスレッドがいくつかありますが、実際に私の問題に答えているスレッドはありません。私のヘッダーには次のものがあります:

 struct table_val  
 {  
    char res;  
    char carry;  
 };  
 typedef struct table_val TABLE_VAL;

ソースファイルで、この静的な構造体の配列を作成しようとしています:

struct TABLE_VAL add_table[] = {
{0, 0}, {1, 0}, {2, 0}, {3, 0}, {4, 0}, {5, 0}, {6, 0}, {7, 0}, {8, 0}, {9, 0},
{1, 0}, {2, 0}, {3, 0}, {4, 0}, {5, 0}, {6, 0}, {7, 0}, {8, 0}, {9, 0}, {0, 1},
{2, 0}, {3, 0}, {4, 0}, {5, 0}, {6, 0}, {7, 0}, {8, 0}, {9, 0}, {0, 1}, {1, 1},
{3, 0}, {4, 0}, {5, 0}, {6, 0}, {7, 0}, {8, 0}, {9, 0}, {0, 1}, {1, 1}, {2, 1},
{4, 0}, {5, 0}, {6, 0}, {7, 0}, {8, 0}, {9, 0}, {0, 1}, {1, 1}, {2, 1}, {3, 1},
{5, 0}, {6, 0}, {7, 0}, {8, 0}, {9, 0}, {0, 1}, {1, 1}, {2, 1}, {3, 1}, {4, 1},
{6, 0}, {7, 0}, {8, 0}, {9, 0}, {0, 1}, {1, 1}, {2, 1}, {3, 1}, {4, 1}, {5, 1},
{7, 0}, {8, 0}, {9, 0}, {0, 1}, {1, 1}, {2, 1}, {3, 1}, {4, 1}, {5, 1}, {6, 1},
{8, 0}, {9, 0}, {0, 1}, {1, 1}, {2, 1}, {3, 1}, {4, 1}, {5, 1}, {6, 1}, {7, 1},
{9, 0}, {0, 1}, {1, 1}, {2, 1}, {3, 1}, {4, 1}, {5, 1}, {6, 1}, {7, 1}, {8, 1}
};

これをコンパイルすると、タイトルのエラーが発生します。その方法で配列を作成することは許可されていませんか? そうでない場合、作成後にすべての構造体を初期化するよりも短いバージョンはありますか?

4

1 に答える 1

4

使用する

TABLE_VAL add_table[]

また

struct table_val add_table[]

そしてそうではない

struct TABLE_VAL add_table[]

あなたがするとき:

typedef struct table_val TABLE_VAL;

TABLE_VALtype という名前の型エイリアスを作成していますstruct table_val

于 2013-05-05T16:27:25.853 に答える