これをコンパイルしました(gccコンパイラ):
#include <stdio.h>
main() {
struct {
a:1;
b:2;
} t;
t.b=6;
t.a=2;
printf("%d %d",t.a,t.b);
}
表示されたエラー:
'a' の前に期待される指定子修飾子リスト
名前のないデータ変数がデフォルトで int として取得される場合に必要な理由。説明してください...
これをコンパイルしました(gccコンパイラ):
#include <stdio.h>
main() {
struct {
a:1;
b:2;
} t;
t.b=6;
t.a=2;
printf("%d %d",t.a,t.b);
}
表示されたエラー:
'a' の前に期待される指定子修飾子リスト
名前のないデータ変数がデフォルトで int として取得される場合に必要な理由。説明してください...
これは、C 言語標準によって要求されます。セクション 6.7.2.1 パート 4 によると:
ビットフィールドには、_Bool の修飾または非修飾バージョン、signed int、unsigned int、またはその他の実装定義型の型が必要です。