---
# System prepended metadata

title: C語言題庫-004

---

# C語言題庫-004
設有以下說明和定義：
```
typedef u nion {long i; int k[5]; char c;} DATE;
struct data { int cat; DATE cow; double dog;} too;
DATE max;
```
則語句printf(“%d”,sizeof(struct date)+sizeof(max)); 的
執行結果是：_____
【標準答案】DATE是一個union, 變量公用空間. 裏面最
大的變量類型是int[5], 佔用20個字節. 所以它的大小是
20
data 是一個struct, 每個變量分開佔用空間. 依次爲int4 +
DATE20 + double8 = 32.
所以結果是20 + 32 = 52.
當然… 在某些16位編輯器下, int 可能是2字節,那麼結果
是int2 + DATE10 + double8 = 20