結構體是一種構造資料型別
有三種形式:資料型別、結構體型別(struct)、共用體型別(union)
一般形式:
struct [結構體名]
;//牢記還有乙個分號
1、基本結構體
1.1、定義結構體型別變數的3種方法
1.1.1、先定義結構體型別+再定義變數名
例題:
struct student1.1.2、定義結構體型別+同時定義結構體型別變數;struct student stu1,stu2;
例題:
struct student1.1.3、直接定義結構體型別變數stu1,stu2;
例題:
struct1.2、結構體變數的初始化stu1,stu2;
格式:結構體型別 結構體變數名=;
方法一:
struct student方法二:stu=;
struct student1.3、結構體變數的引用;struct student
stu=;
1.3.1、結構體型別資料成員的引用
引用規則:結構體變數出同型別賦值外,不能整體引用,只能引用變數成員
引用方式: 結構體變數名.成員變數
stu.name = 「zhangjin」;
1.3.2、求結構體型別資料的位元組數
sizeof(變數名或型別名);1.3.3、巢狀結構體中成員的引用
結構體巢狀時,逐級引用
struct student
birthday;
}stu1,stu2;
//給出生日期的年份賦值
stu1.birthday.year = 1999;
2、結構體陣列
2.1 結構體陣列的定義及初始化
2.1.1結構體陣列的定義,與定義結構體型別變數很類似,也有三種形式
形式一:
struct student形式二:;struct student stu[2];
struct student形式三:stu[2];
struct2.1.2 結構體陣列的引用stu[2];
struct student2.1.3、結構體陣列元素成員的引用str[3]=};
str[1]=str[0];
引用方式: 結構體陣列名[下標].成員名
struct student3、結構體和指標str[3];
stu[1].age++;
strcpy(stu[0].name,」zhangsan」);
3.1 結構體指標變數的定義
定義形式:struct 結構體名 *結構體指標名;
struct student * p;3.2 結構體指標變數的引用//此時指標變數*p中存放的是–結構體變數在記憶體的起始位址
//例:
struct student
stu;
struct student *p=&stu;
使用結構體指標變數引用成員形式
(*結構體指標變數名).成員名<=>結構體指標變數名->成員名<=>結構體變數名.成員名
例題:
int n;int *p = &n;
*p = 10; <=> n = 10;
struct student
stu1;
struct student *p = &stu1;
stu1.num=101; <=> (*p).num=101; <=> p->num=101;
感謝博主的部落格,讓我們有學習的機會!謝謝!推薦》
C語言結構體
1.1.1 結構概念 1 結構存在的意義 存在是合理的,許多事物的存在是在不斷解決問題引入的,當然有更好的方法出現時改變也是合理的。在實際問題中,一組資料往往具有不同的資料型別。例如,在學生登記表中,姓名應為字元型,學號可為整型或字元型,年齡應為整型,性別應為字元型,成績可為整型或實型。顯然不能用乙...
C語言 結構體
宣告乙個結構體型別 struct 結構體名 成員表列 定義結構體變數的方法 1 先宣告結構體型別再定義變數名。在定義了結構體變數後,系統會為之分配記憶體單元.例如 struct student student1,student2 2 在宣告型別的同時定義變數,例如 struct 結構體名 成員表列 ...
c語言 結構體
1 定義結構體 c語言允許使用者自己建立不同型別資料組成的組合型的資料結構 struct 結構體名 1 結構體的型別不是只有一種,可以根據需要設計許多種,如struct student struct worker等 2 結構體的成員可以是另一結構體的成員,注意的是引用此成員的方式 2 定義結構體變數...