我知道聯盟的概念,但我沒有看到,我應該使用現實世界編碼的實際情況聯合數據結構。如果你們可以給我一些示例或教程,以正確顯示使用聯合的案例,我將非常感激。
在此先感謝。
我知道聯盟的概念,但我沒有看到,我應該使用現實世界編碼的實際情況聯合數據結構。如果你們可以給我一些示例或教程,以正確顯示使用聯合的案例,我將非常感激。
在此先感謝。
我在哪裏經常使用它:解析配置文件我將所有值存儲在union數據類型中。例如。當值可以是int類型或字符串時,我將使用如下數據結構:
struct cval_s {
short type;
union {
int ival;
char *cval;
} val;
};
在更復雜的問題中,我也使用它們。例如。一旦我爲一種簡單的腳本語言編寫了一個解釋器,並且該語言中的值由包含聯合的結構表示。
想象一下有一個struct
保留一個值和該值的類型。如果將類型設置爲特定類型,則只需使用union
的其中一個成員,而不是在同時使用一個成員時爲其中三個成員浪費空間。
struct {
int type;
union {
int intval;
double dval;
char cval;
} value;
}
另一個重複:http://stackoverflow.com/questions/724617/examples-of-union-in-c – 2011-06-10 07:51:39