全國咨詢/投訴熱線:400-618-4000

結構體變量如何定義?【C/C++課程】

更新時間:2020年11月30日18時08分 來源:傳智教育 瀏覽次數:

好口碑IT培訓

結構體類型與其他數據類型相同,其變量要通過數據類型定義,但結構體類型是一種自定義數據類型,其變量定義方式與其他數據類型有些許區別。結構體變量的定義方式主要有兩種,下面分別進行介紹。

1、先定義結構體類型,再定義結構體變量

先定義結構體類型,再定義結構體變量,這種結構體變量定義方式與其他數據類型相同,其語法格式如下:

struct 結構體類型名 結構體變量名;

以上一節定義的struct Student結構體類型為例,定義該結構體變量的示例代碼如下:

struct Student stu1,stu2;

上述代碼定義了2個結構體類型變量stu1和stu2,這時,stu1和stu2便具有了結構體特征,編譯器會為它們分配一段內存空間用于存儲具體數據,具體如下圖所示。

1606730051852_結構體變量的定義.png

struct Student結構體變量stu1、stu2的存儲結構

需要注意的是,使用結構體類型定義變量時,struct關鍵字不可少,struct Student作為整體才表示一個結構體類型。缺少struct關鍵字,程序編譯不通過。錯誤示例代碼如下:

Student stu1;     //錯誤,缺少struct關鍵字

編譯器在編譯上述代碼時會報錯,提示未定義標識符“Student”。

2、 在定義結構體類型的同時定義結構體變量

定義結構體類型的同時定義結構體變量,其語法格式如下:

struct 結構體類型名稱
{
  數據類型 成員名1;
  數據類型 成員名2;
  …
  數據類型 成員名*n*;
 }結構體變量名列表;

以定義struct Student結構體類型,并定義struct Student類型的變量stu1、stu2為例,具體示例如下:

struct Student{
  int num;  char name[10];
  char sex;
}stu1,stu2;

上述代碼在定義結構體類型struct Student的同時定義了結構體變量stu1和stu2,該方式的作用與先定義結構體類型,再定義結構體變量作用相同,其中,stu1和stu2中所包含的成員類型都是一樣的。


猜你喜歡:

環境變量是什么?如果定義環境變量?

C++中一維數組是什么?怎么使用?

C/C++培訓課程

人妻系列无码专区_漂亮人妻被中出中文字幕_人妻中文制服巨乳中文