教育行業(yè)A股IPO第一股(股票代碼 003032)

全國(guó)咨詢/投訴熱線:400-618-4000

結(jié)構(gòu)體類型是什么?如何定義?

更新時(shí)間:2020年11月30日18時(shí)04分 來源:傳智教育 瀏覽次數(shù):

好口碑IT培訓(xùn)

C語言中結(jié)構(gòu)體類型是由不同的類型的數(shù)據(jù)組成的,組成結(jié)構(gòu)體類型的每一個(gè)數(shù)據(jù)都稱為該結(jié)構(gòu)體類型的成員。在程序設(shè)計(jì)中,使用結(jié)構(gòu)體時(shí),首先要對(duì)結(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)體類型名稱下的一對(duì)大括號(hào)中,聲明了結(jié)構(gòu)體類型的成員,每個(gè)成員由數(shù)據(jù)類型和成員名共同組成。

以描述學(xué)生信息為例,假設(shè)學(xué)生信息包含學(xué)號(hào)(num)、姓名(name)、性別(sex)、年齡(age)、地址(address),那么,存儲(chǔ)學(xué)生信息的結(jié)構(gòu)體類型可以定義為下列格式:

struct Student{
  int num;
  char name[10];
  char sex;  int age;
  char address[30];
};

在上述定義中,結(jié)構(gòu)體類型struct Student由5個(gè)成員組成,分別是num、name、sex、age和address。

在定義結(jié)構(gòu)體類型時(shí),需要注意以下幾點(diǎn):

(1)結(jié)構(gòu)體類型定義以關(guān)鍵字struct開頭,后面跟的是結(jié)構(gòu)體類型的名稱,該名稱的命名規(guī)則與變量名相同;

(2)結(jié)構(gòu)體類型與整型、浮點(diǎn)類型、字符類型等類似,只是數(shù)據(jù)類型,而非變量。

(3)定義好一個(gè)結(jié)構(gòu)體類型后,并不意味著編譯器會(huì)分配一塊內(nèi)存單元存放各個(gè)數(shù)據(jù)成員,它只是告訴編譯系統(tǒng)結(jié)構(gòu)體類型由哪些類型的成員構(gòu)成、各占多少字節(jié)、按什么格式存儲(chǔ),并把它們當(dāng)作一個(gè)整體來處理。

(4)定義結(jié)構(gòu)體類型時(shí),末尾的分號(hào)不可缺少。


猜你喜歡:

環(huán)境變量是什么?如果定義環(huán)境變量?

C++中一維數(shù)組是什么?怎么使用?

C/C++培訓(xùn)課程

0 分享到:
和我們?cè)诰€交談!