久久婷婷香蕉热狠狠综合,精品无码国产自产拍在线观看蜜,寡妇房东在做爰3,中文字幕日本人妻久久久免费,国产成人精品三上悠亚久久

當前位置:首頁 > 嵌入式培訓 > 嵌入式學習 > 學習筆記 > 嵌入式學習筆記:c語言結構體學習方法

嵌入式學習筆記:c語言結構體(ti)學習方法 時間:2018-09-04      來源:未知(zhi)

C語言結構體學習還是(shi)很簡單(dan)的,有(you)些人對結構體的學習很迷茫(mang),那就(jiu)是(shi)因(yin)為你沒(mei)有(you)掌(zhang)握方法(fa)來學,今(jin)天分享一(yi)下學習C語言結構體的方法(fa),一(yi)起來看:

【1】定義

【2】結構體類型變量的定義方法

【3】結構(gou)體普通變量的(de)使用(yong)形式

【4】結構體大小

【5】結構體(ti)指(zhi)針

【6】結構體(ti)數組

【7】結(jie)構體數組(zu)的使用

【1】定義

不同類(lei)型的(de)(de)數據(ju)是互相聯(lian)系組成了一個有(you)機的(de)(de)整體。此時,就要用到一種新的(de)(de)構(gou)造類(lei)型數據(ju)——結構(gou)體(structure),簡稱結構(gou)。

定義(yi)一(yi)個結構體類型的(de)一(yi)般形式為:

struct 結(jie)構體名

{

數據類型

數據類型

成員名1;

成員名2;

數據類型

成員名n;

};

在大括號中(zhong)的(de)內容(rong)也稱(cheng)為“成員(yuan)列表(biao)”或“域表(biao)”,其中(zhong)每個(ge)成員(yuan)名的(de)命名規則與變(bian)量名相同;數據類型可以是(shi)基(ji)本變(bian)量類型和數組類型,或者(zhe)是(shi)一個(ge)結(jie)(jie)(jie)構體類型。用(yong)分(fen)號“;”作(zuo)為結(jie)(jie)(jie)束(shu)符。整個(ge)結(jie)(jie)(jie)構的(de)定義也用(yong)分(fen)號作(zuo)為結(jie)(jie)(jie)束(shu)符

說(shuo)明(ming):結構體類型中的成員名可(ke)以(yi)與(yu)程(cheng)序中的變量(liang)名相同,二者并(bing)不代表同一對象,編譯程(cheng)序可(ke)以(yi)自動(dong)對它們進行區分(fen)。

最后,總結(jie)(jie)一下結(jie)(jie)構體類型的特點:

(1)結構(gou)體(ti)類型是用戶自行構(gou)造的。

(2)它由若干(gan)不同的(de)基本(ben)數據(ju)類型(xing)的(de)數據(ju)構成。

(3)它屬(shu)于C語言的一種數據類型(xing),與整型(xing)、實型(xing)相當(dang)。

//定(ding)義它時不分配空間(jian),只有(you)用(yong)它定(ding)義變量時才分配空間(jian)。//注意:結構體(ti)需(xu)要在程序的最(zui)上面(mian)定(ding)義//注意:定(ding)義一個結構體(ti)時,沒(mei)有(you)開(kai)辟空間(jian)

【2】結構體類型變量的定義(yi)方(fang)法

這是(shi)C語言中定義結構體類型變量最常見的方式

struct 結構體名

(1)先定義結構體類(lei)型再(zai)定義變量 {

名 成員列(lie)表;

};

struct 結構(gou)體名變量名;

struct 結構體名

(2)在定義(yi)類(lei)型的同(tong)時(shi)定義(yi)變量 {

成員列表;

}變量名;

struct//沒(mei)有(you)結構體名

(3)直接定義結構類(lei)型變量 {

成員列表

}變量名;

struct stu//有名結構(gou)體

{

int id;

char name[N];

struct//一(yi)般在(zai)結(jie)構體內部再定義(yi)一(yi)個結(jie)構體,則需

要(yao)使(shi)用無名結(jie)構體

(4)嵌套(tao)定義結構(gou)體變量{

int year;

int mon;

int day;

}birthday; birthday為(wei)stu內部成員的(de)變量的(de)名字

int score;

char sex;

};

【3】結(jie)構體普通變量的使(shi)用(yong)形(xing)式

使用結構(gou)體(ti)變量(liang)訪問結構(gou)體(ti)成員(yuan)

結構體變量的成員用以下一般形式(shi)表示(shi):

結構體變量名(ming).成員名(ming)

【4】結構體大小

一(yi)個(ge)結(jie)構體(ti)變量占用內存的(de)實際大小(xiao),也可以利用sizeof求出(chu)。它的(de)運算(suan)表達式

為:

sizeof(運算(suan)量)

注意: 4 字(zi)節對(dui)齊(qi),

若某一變量所占字(zi)(zi)節(jie)(jie)為4字(zi)(zi)節(jie)(jie)或是4字(zi)(zi)節(jie)(jie)的(de)(de)倍(bei)數的(de)(de)情況(kuang)下(xia)(int、float、double、long),它之前的(de)(de)變量所占空間若不(bu)為4的(de)(de)倍(bei)數(char、short),則需將其補齊為4的(de)(de)倍(bei)數

例如:char ch;

int i; // 則ch同樣占(zhan)據4字節

char ch2;

short s;

long l; // ch2 與 s 共同占據(ju)4字節(jie),l 占據(ju) 4 字節(jie)

【5】結構(gou)體(ti)指針

//結構體指針變量訪問(wen)成員,通常使用x->或者(*x)

【6】結構體數組(zu)

具有相同(tong)結(jie)構(gou)體(ti)類型的(de)結(jie)構(gou)體(ti)變量也可以(yi)組(zu)成(cheng)數組(zu),稱它們為(wei)結(jie)構(gou)體(ti)數組(zu)。

結構體數組的(de)定義形式如下:

struct 結(jie)構體名

(1)先(xian)定義(yi)結(jie)構(gou)體類型(xing),再用它定義(yi)結(jie)構(gou)體數{

組(zu)。成(cheng)員(yuan)表列(lie);

};

struct 結構體名數組名[元素個數]

(2)在定義(yi)(yi)結構(gou)體(ti)類型同時(shi)定義(yi)(yi)結構(gou)體(ti)數(shu)組。結構(gou)體(ti)數(shu)組的定義(yi)(yi)形式如(ru)下:

struct 結(jie)構體名

{

成員表列;

}數組名[元素個數];

結構體數(shu)組的定義形式(shi)如下:

struct//沒(mei)有結構體名

(3)直(zhi)接定(ding)義(yi)結構體數組{

成員表列;

}數(shu)組名(ming)[元素個(ge)數(shu)];

【7】結構體數組的使用

(1)引用某(mou)一元素(su)中(zhong)的成員(yuan)。

(2)可以(yi)將(jiang)一(yi)個(ge)結構體(ti)數(shu)組元素值賦給同(tong)一(yi)結構體(ti)類型的數(shu)組中(zhong)的另(ling)一(yi)個(ge)元素,

或賦給同一類(lei)型(xing)的變量。

//結構體數組(zu)(zu)(zu)本質(zhi)上是一個數組(zu)(zu)(zu),所以不能通過(guo)數組(zu)(zu)(zu)名進行賦值

struct stu t[3];

//t = s;

//數組元(yuan)素(su)相當于變量,所以可(ke)以使用結構體數組元(yuan)素(su)進行賦值 t[0] = s[0];

t[1] = s[1];

t[2] = s[2];

(3)不能把結構(gou)體數組元素作為一個整(zheng)體直接進行輸(shu)入輸(shu)出。

上一篇:嵌入式學習筆記:c語言輸入輸出函數基礎總結

下一篇:嵌入式學習筆記:進程間的通信方式總結

熱(re)點文章推薦
華清學(xue)員(yuan)就業榜單
高薪學員經驗分(fen)享
熱點新(xin)聞推薦
前臺專(zhuan)線(xian):010-82525158 企(qi)業培訓洽談專線:010-82525379 院校合作洽談專線:010-82525379 Copyright © 2004-2022 北京華清遠見科技集團有限公司 版權所有 ,,京公海網安備11010802025203號

回到頂部