1.結構體型別

2020-08-12 11:45:59

 

1.結構體型別變數的定義和參照

結構體是一種複合數據型別,它由不同數據型別的儲存單元組合。例如,學生的成績表上有姓名、專業、學號和沒門功課成績,姓名和專業可以看作是字串型數據,學號是無符號長整型數據,每門功課是單精度浮點型數據,由這些型別複合組成的學生成績單數據型別,就是結構體型別。

1.1 結構體型別變數的定義

在定義結構體型別變數之前,首先需要設計結構體,定義結構體的名稱和成員的數據型別,然後使用結構體說明變數,這時結構體就成爲了一種新的數據結構。定義結構體使用修飾符 struct,它一般形式爲:

struct 結構體名
{
    成員列表
};

結構體名是該結構體獨一無二的名稱,命名規則與變數命名相同。成員項列表是結構體中數據成員的數據型別和名稱。數據成員可以是變數、陣列或者其他結構體等複合數據結構。成員項列表的一般形式爲:

數據型別 成員名1;
數據型別 成員名2;
數據型別 成員名3;
...

如下例所示,學生成績單,該結構爲 4 個成員,name[] 和 dept[] 是字元型陣列,用於儲存學生姓名與專業,no 是長整型變數,用於儲存學生的學號,score[]是單精度浮點型陣列,用於儲存學生的成績。

struct student            // 結構體名
{
    char name[50];        // 姓名
    char dept[50];        // 專業
    long no;            // 學號
    float score[4];        // 成績
}