------------本節內容開始------------
-
結構體數據類型概念:
結構體是一種數據類型,屬於一種構造類型,它是由若干個成員組成,每個成員可以是基本的數據類型,
也可以是構造類型。由於結構體類型是一種“構造”而成的數據類型,在使用之前必須先聲明它,即先構造出這種結構類型。
-
結構體數據類型關鍵字:
關鍵字:struct
-
結構體數據類型的聲明:
struct 結構體名稱
{
成員列表(list);
}
結構體成員的聲明形式:
數據類型 成員名稱;
結構體名是由用戶自定義的一個合法的標識符,用於唯一標識該結構體數據類型,也稱為“結構體標記”。
其中,數據類型可以是一個基本數據類型,也可以是一個構造數據類型;成員名稱和普通變量命名規則相同。
成員列表也稱為“域表”,每一個結構體成員稱為一個“域”,結構體類型的成員名可以與程序中其他變量的名稱
相同。結構體數據類型的生命周期,如果在函數外面聲明,則從聲明的位置開始到程序結束全局有效,如果是
在函數內部聲明,則只在本函數內部有效。
-
結構體數據類型變量的定義:
1.先聲明結構體數據類型,再定義結構體數據類型變量,如下:
結構體數據類型聲明:
struct 結構體名稱
{
成員列表(list);
};
該結構體數據類型變量聲明:
struct 結構體名稱 該結構體變量列表;
2.在聲明結構體數據類型的同時,定義結構體數據類型變量,如下:
struct 結構體名稱
{
成員列表(list);
}該結構體類型變量列表;
3.直接定義結構體數據類型變量,如下:
struct
{
成員列表(list);
}該結構體類型變量列表;
這中形式的結構體類型,只能夠定義一次變量,不能在其他地方再次使用它來定義結構體變量了。定義了結構體
變量之后,系統會為結構體變量分配內存,結構體變量所占用的內存空間是各個成員所占的存儲空間的總和。
注意:
【1】:結構體數據類型和結構體數據類型變量是兩個不同的概念,在編譯時,系統只會為變量分配存儲空間,而不
會為類型分配存儲空間。
【2】:結構體類型中的成員可以單獨使用,它們的作用和地位和同類型的普通變量一樣。
【3】:在結構體數據類型中,結構體數據類型的成員的數據類型也可以是結構體數據類型(
划重點
)。
結構體數據類型變量的引用:
【1】:對結構體變量成員的引用。
一般情況下,不能將結構體類型變量作為一個整體引用,而只能對結構體類型變量的成員進行單獨引用。
【2】:結構體類型變量引用成員的方式。
1.使用成員運算符訪問:
2.使用
------------本節內容結束------------