更新時間:2020-11-30 來源:黑馬程序員 瀏覽量:
C語言中結(jié)構(gòu)體類型是由不同的類型的數(shù)據(jù)組成的,組成結(jié)構(gòu)體類型的每一個數(shù)據(jù)都稱為該結(jié)構(gòu)體類型的成員。在程序設(shè)計中,使用結(jié)構(gòu)體時,首先要對結(jié)構(gòu)體類型的組成進(jìn)行描述,結(jié)構(gòu)體的定義方式如下:
struct 結(jié)構(gòu)體類型名稱 { 數(shù)據(jù)類型 成員名1; 數(shù)據(jù)類型 成員名2; …… 數(shù)據(jù)類型 成員名n;};
在上述格式中,struct是定義結(jié)構(gòu)體類型的關(guān)鍵字,struct關(guān)鍵字后面是結(jié)構(gòu)體類型名稱。在結(jié)構(gòu)體類型名稱下的一對大括號中,聲明了結(jié)構(gòu)體類型的成員,每個成員由數(shù)據(jù)類型和成員名共同組成。
以描述學(xué)生信息為例,假設(shè)學(xué)生信息包含學(xué)號(num)、姓名(name)、性別(sex)、年齡(age)、地址(address),那么,存儲學(xué)生信息的結(jié)構(gòu)體類型可以定義為下列格式:
struct Student{ int num; char name[10]; char sex; int age; char address[30]; };
在上述定義中,結(jié)構(gòu)體類型struct Student由5個成員組成,分別是num、name、sex、age和address。
在定義結(jié)構(gòu)體類型時,需要注意以下幾點(diǎn):
(1)結(jié)構(gòu)體類型定義以關(guān)鍵字struct開頭,后面跟的是結(jié)構(gòu)體類型的名稱,該名稱的命名規(guī)則與變量名相同;
(2)結(jié)構(gòu)體類型與整型、浮點(diǎn)類型、字符類型等類似,只是數(shù)據(jù)類型,而非變量。
(3)定義好一個結(jié)構(gòu)體類型后,并不意味著編譯器會分配一塊內(nèi)存單元存放各個數(shù)據(jù)成員,它只是告訴編譯系統(tǒng)結(jié)構(gòu)體類型由哪些類型的成員構(gòu)成、各占多少字節(jié)、按什么格式存儲,并把它們當(dāng)作一個整體來處理。
(4)定義結(jié)構(gòu)體類型時,末尾的分號不可缺少。
猜你喜歡: