C講課筆記 結構體

2021-10-14 16:31:44 字數 1715 閱讀 4632

二、案例演示

(二)使用指標指向結構體

「結構體型別」是由不同資料型別變數組成的集合體,相當於其它高階語言中的記錄。結構體型別的資料由若干稱為「成員」的資料組成,每個成員既可以是乙個基本資料型別的資料,也可以是另乙個構造型別的資料。

struct 型別名 

;

以上整個部分是乙個資料型別,與整型的int是同樣地位。可用typedef把結構體型別替換成乙個只有幾個字母的簡短識別符號。

結構體變數是用說明的結構體型別所定義的乙個變數,與結構體型別不是一回事。乙個結構體變數所佔位元組數為其所有成員所佔位元組數之和。如struct student a, b; 則表明定義了兩個結構體變數a,b,每個變數佔14個位元組。a,b與int i, j; 中的變數i,j是同樣地位。

引用成員可用以下3種方式:(1)結構體變數名.成員名;(2)指標變數名->成員名:(3)(*指標變數名).成員名。點(.)稱為成員運算子,箭頭(->)稱為結構指向運算子。

/* 

功能:定義和使用結構體

日期:2023年12月3日

*/#include

#include

//定義結構體

功能:使用指標指向結構體

日期:2023年12月3日

*/#include

#include

//定義結構體

("學號\t姓名\t性別\t年齡\t成績\t家庭住址\n");

printf

("%d\t%s\t%s\t%d\t%.2f\t%s\n",(

*s1)

.num,

(*s1)

.name,

(*s1)

.***,

(*s1)

.age,

(*s1)

.score,

(*s1)

.address)

;printf

("%d\t%s\t%s\t%d\t%.2f\t%s\n",(

*s2)

.num,

(*s2)

.name,

(*s2)

.***,

(*s2)

.age,

(*s2)

.score,

(*s2)

.address)

;printf

("%d\t%s\t%s\t%d\t%.2f\t%s\n",(

*s3)

.num,

(*s3)

.name,

(*s3)

.***,

(*s3)

.age,

(*s3)

.score,

(*s3)

.address)

;

C講課筆記 函式

三 課堂練習 計算階乘之和 三 引數傳遞 二 位址傳遞 四 遞推演算法與遞迴演算法 宣告函式 只有函式頭 函式名 形式引數 返回值 定義函式 包含函式頭和函式體 呼叫函式 通過函式名加實際引數來呼叫 功能 編寫函式求三個整數最大值 日期 2014年5月8日 include stdio.h 第1步 宣...

C 筆記(6) 結構體

結構體是c語言中的一種由基本資料型別構成的 並用乙個識別符號來命名的各種變數的組合。比如定義乙個node的結構體 struct node 這樣就定義了乙個結構體型別,它裡面包含乙個字串和乙個整型變數。用這個結構體來定義變數s1和s2 struct node s1,s2 s1和s2就都是struct ...

C語言筆記 結構體

在習慣複製貼上之後導致現在自己敲程式都成了問題。鏈結構體都不會敲了,於是痛定思痛,寫下這篇筆記,警示後 zi 人 ji 定義 struct 結構體名 一定要有分號,定義本身就是個語句的說例子 struct boo 定義名字是boo的結構體 和定義出一種新的型別差不多 上面這樣就定義出了個結構體,相當...