物聯網學習教程—定義結構體型別變數的方法

千鋒教育官方發表於2019-09-02

問題定義:

      有時需要將不同型別的資料組合成一個有機

的整體,以便於引用。如:

一個學生有學號/ 姓名/ 性別/ 年齡/ 地址等屬性   int num; char name[20];       char sex;        

 

 

宣告一個結構體型別的一般形式為:

             struct    結構體名

      {成員表列};

如:struct student

        {

              int num;char name[20];char sex;

              int age;float score;char addr[30];

可以採取以下3 種方法定義結構體型別變數:

(1) 先宣告結構體型別再定義變數名

例如:struct  student        student1, student2;

 

在定義了結構體變數後,系統會為之分配記憶體單元。

  例如:student1 student2 在記憶體中各佔59 個位元組(2+20+1+2+4+30=59 )。

注意:

  將一個變數定義為標準型別(基本資料型別)與定義為結構體型別不同之處在於後者不僅要求指定變數為結構體型別,而且要求指定為某一特定的結構體型別,因為可以定義出許許多多種具體的結構體型別。

 (2) 在宣告型別的同時定義變數

   這種形式的定義的一般形式為:

      struct  結構體名

       

            成員表列

         }變數名錶列;

例如:

struct student

        int num

          char name[20]

          char sex

          int age

          float score

          char addr[30]

     student1,student2;

注意:(它的作用與第一種方法相同,即定義了兩個struct student 型別的變數student1,

student2

(3) 直接定義結構體型別變數

其一般形式為:

      struct

       

       成員表列

      }變數名錶列;

即不出現結構體名。

注意:

(2) 對結構體中的成員(即“域”),可以單獨使用,它的作用與地位相當於普通變數。

(3) 成員也可以是一個結構體變數。

(4)  成員名可以與程式中的變數名相同, 二者不代表同一物件。

例如:struct date  /* 宣告一個結構體型別*/

    int num

          char name[20]

          char sex

          int age

 

 

注意:先宣告一個struct date 型別,它代表“日期”,包括3 個成員:month (月)、day (日)、year (年)。然後在宣告struct student 型別時,將成員birthday 指定為struct date 型別。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69914734/viewspace-2655731/,如需轉載,請註明出處,否則將追究法律責任。

相關文章