色偷偷偷亚洲综合网另类,亚洲欧美另类在线观看,欧美午夜激情在线,久久久精品一区

當前位置:IT培訓 > 華清遠見教育科技集團 > 嵌入式學習 > 講師博文 > 結構體
結構體
時間:2018-04-16作者:華清遠見

結構體的概念

結構體屬于C數據類型中的構造數據類型(Composite Data Types),在結構體中可以包含若干個不同數據類型和不同意義的數據項,從而使這些數據項組合起來反映某一個信息,這些數據項稱為結構體的成員(member)。

舉個例子:

上圖是模擬了一個圖書管理中的部分數據,可以很清楚的看到一本書有編號、書名、作者等許多信息。如果我想通過一個普通的數據類型來完整的描述這本書肯定是不現實的,而結構體類型是集合了多種不同的數據類型,可以更加完全且方便的描述一本書,此時結構體的每一個成員分別代表著書的不同的信息。

結構體的聲明及結構體變量的定義

標準形式:

這里struct為結構體關鍵字,一般情況下,結構體名、成員列表和結構體變量名列表這三部分至少要出現2個,以示例解釋:

1.

2.

3.

4.完全形式

5.也可以通過typedef將結構體重新定義

結構體變量的使用方法

結構體變量在使用的過程中應該注意以下幾點:

1. 不能將一個結構體類型變量作為一個整體加以引用,而只能對結構體類型變量中的各個成員分別引用。

2. 使用成員運算符”.”修改和引用成員。

3. 相同結構體類型的變量可以相互賦值。

輸出結果:

結構體數組的使用方法

結構體數組的使用方法就是普通類型數組的使用方式與結構體變量的使用方式相結合,沒有難度,直接上代碼:

輸出結果:

結構體指針的使用方法

結構體指針也可以直接引用結構體內的成員,但是格式與變量引用不同,不用”.”而是用”->”引用。

輸出結果:

結構體內的偏移規則

1.每個成員的偏移量都必須是當前成員所占內存大小的整數倍如果不是編譯器會在成員之間加上填充字節。

2.當所有成員大小計算完畢后,編譯器判斷當前結構體大小是否是結構體中最寬的成員變量大小的整數倍,如果不是會在最后一個成員后做字節填充。

結構體的大小計算

結構體中有一個long類型,兩個char類型,兩個int類型成員,一個short類型成員,如果只按照這幾個成員大小相加,結構體大小應該是 4*3+1*2+2=16 個字節大小。但實際輸出結果是20個字節大小。

下面來一步步分析編譯器是如何計算大小進行分配的。

1、遇到第一個成員變量a,該成員偏移量為0,大小為4,符合偏移規則第一條。

2、接下來第二個成員變量b,偏移量為4,大小為1,符合偏移規則第一條。

3、成員變量c,偏移量為5,大小為4,不符合偏移規則第一條。在成員b和c之間填充三個字節,此時,偏移量大小為8,符合偏移規則第一條,繼續往下。

4、成員變量d,偏移量為12,大小為4,符合偏移規則第一條,繼續往下。

5、成員變量e,偏移量為16,大小為1,符合偏移規則第一條。

6、成員變量f,偏移量為17,大小為2,不符合偏移規則第一條,在成員e和f之間填充1個字節,此時,偏移量大小為18,最終大小20個字節


發表評論

全國咨詢電話:400-611-6270,雙休日及節假日請致電值班手機:15010390966

在線咨詢: 曹老師QQ(3337544669), 徐老師QQ(1462495461), 劉老師 QQ(3108687497)

企業培訓洽談專線:010-82600901,院校合作洽談專線:010-82600350,在線咨詢:QQ(248856300)

Copyright 2004-2018 華清遠見教育科技集團 版權所有 ,京ICP備16055225號,京公海網安備11010802025203號

有位老師想和您聊一聊

色偷偷偷亚洲综合网另类,亚洲欧美另类在线观看,欧美午夜激情在线,久久久精品一区
主站蜘蛛池模板: 91sa在线看| 午夜精品三级视频福利| 国产91在线播放九色快色| 在线播放日韩专区| 国产精品白嫩初高中害羞小美女 | 国产欧美va欧美va香蕉在| 色偷偷91综合久久噜噜| 国产精品视频永久免费播放| 欧美日韩另类在线| 中文字幕免费精品一区| 91夜夜揉人人捏人人添红杏| 97精品伊人久久久大香线蕉 | 久久精品99久久香蕉国产色戒| 国产欧美日韩免费| 69av视频在线播放| 久久99视频精品| 在线观看成人黄色| 91精品视频播放| 国产精品91久久久久久| 久久久久久久久久久成人| 精品国产一区二区三区久久久狼| 亚洲精品97久久| 成人a在线观看| 国产精品福利网| 3344国产精品免费看| 精品欧美激情精品一区| 深夜精品寂寞黄网站在线观看| 日韩av在线免播放器| 亚洲综合日韩中文字幕v在线| 国产v综合v亚洲欧美久久| 97在线视频观看| 高清在线视频日韩欧美| 欧美高清自拍一区| 精品久久久久久久久国产字幕| www.国产精品一二区| 中文字幕欧美精品在线| 亚洲一区二区黄| 一本色道久久88综合亚洲精品ⅰ| 日韩成人xxxx| 日韩精品视频在线免费观看| 91在线免费看网站|