[問題] 在struct中的union
開發平台: MPLAB C30,編譯器是 gcc
舉例來說,下面這樣的結構
struct sS {
char A;
union {
int B;
char C,D;
};
} S;
我可以用 "S.B" 來存取資料
=========================================================
可是如果是這樣的結構
union uS {
int B;
char C,D;
};
struct sS {
char A;
union uS U;
} S;
就必須要用 "S.U.B" 來存取資料
==========================================================
上面兩種寫法編譯器都可以過,因為我的這個 uS 結構會被很多 struct 使用
但又不想要多一個".U"的累贅敘述,請問應該怎麼宣告?
下面這樣宣告不會過
struct sS {
char A;
union uS;
} S;
這似乎是一種叫做 Unnamed struct/union 的東西
可是我沒有找到怎麼宣的教學,或是答案是不可行?
目前只想到用#define的方式來防止重複敘述
--
填充題: ______なのはいけないと思います!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.116.180.163
※ 編輯: SmallBeeWayn 來自: 122.116.180.163 (09/03 16:01)
推
09/03 19:49, , 1F
09/03 19:49, 1F
→
09/03 19:50, , 2F
09/03 19:50, 2F
→
09/03 19:50, , 3F
09/03 19:50, 3F