日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

C语言共用体

發布時間:2024/9/27 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C语言共用体 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

共用體

  • 共用體類型的定義、變量定義和使用
  • 共用體和結構體的相同和不同
  • 共用體的主要用途

共用體類型的定義、變量定義和使用

1.共用體union和結構體struct在類型定義、變量定義、時候用方法上很相似。
2.共用體和結構體不同,結構體類似于一個包裹,結構體中的成員彼此是獨立存在的,分布在內存的不同單元中,他們只是被打包成一個整體叫做結構體而已。共用體中的各個成員其實是一體的,彼此不獨立,他們使用同一個內存單元。可以理解為:有時候是這個元素,有時候是那個元素,更準確的說法是同一個內存空間的多種解釋方式。
3.共用體union就是對同一塊內存中存儲的二進制的不同的理解方式。
4.Union的sizeof測到的大小實際是union中各個元素里面占用內存最大的那個元素的大小。因為可以存下這個就一定能夠存的下其他的元素。
5.Union中元素不存在內存對齊的問題,因為union中實際只有一個內存空間,都是從同一個地址開始的(開始地址就是整個union占有的內存空間的首地址),所以不涉及內存對齊。

共用體和結構體的相同和不同

1.相同點就是操作的語法幾乎相同。
2.不同點:本質上不同,struct是多個獨立元素(內存空間)打包在一起。Union是一個元素(內存空間)的多種不同解析方式。

共用體的主要用途

1.共用體就用在那種對同一個內存空間進行多種不同規則解析的這種情況下。
2.C語言中其實是可以沒有公用體的,用指針和強制類型轉換可以替代共用體完成同樣的功能,但是共用體的方式更簡單、更便捷、更好理解。

總結

以上是生活随笔為你收集整理的C语言共用体的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。