每日一题(32)—— 联合体大小
生活随笔
收集整理的這篇文章主要介紹了
每日一题(32)—— 联合体大小
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
設有以下說明和定義:
typedef union {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));的執行結果是:
分析:
16位編譯器中,union = 5*2 = 10
??????? ???????? ???????? ? data = int 2 + 10 + 8 = 20
? ? ? ? ? ? ? ? ? ? ? ? ? ? 此時結果為30
32位編譯器中:union = 5*4 = 20
? ? ? ? ? ? ? ? ? ? ? ? ? ? ?Data = int 4+ union 20 + double 8 = 32
? ? ? ? ? ? ? ? ? ? ? ? ? ? 此時結果為52
總結
以上是生活随笔為你收集整理的每日一题(32)—— 联合体大小的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python自动控制鼠标
- 下一篇: VoIP服务器处理协议,多协议VoIP服