struct tag varibale-lst;
struct
x,y;
//建立了結構體變數x,y,變數包含三個成員:整數、浮點數、字元
也可以這樣建立結構體變數
struct name
;//建立了結構體name
struct name x,y;
//建立了結構體變數x,y
#include
struct student//建立了乙個名為student的資料型別
;//這個分號不可省略
intmain()
}}for(i=
1;i<=n;i++
)printf
("%s %d\n"
,a[i]
.name,a[i]
.score)
;}
1、指向結構的指標通常比結構本身更容易操控。
2、早期c實現中,結構不能作為引數傳遞給函式,但是可以傳遞指向結構的指標。
3、即使能傳遞乙個結構,傳遞指標通常更有效率。
4、一些用於表示資料的結構中包含指向其他結構的指標。
struct student
;
宣告結構指標:
struct student *p;//指標p可以指向任意現有的student型別的結構
例如,mike是乙個student型別的變數,可以這樣寫:
p =
&mike;
和陣列不同,結構變數名並不是結構的位址,因此要在結構變數名前面加上&運算子
指標p指向結構變數mike,如何通過p獲得mike的值?
第一種方法,使用 -> 運算子
如果 p ==
&mike,那麼 p -> score 即是 mike.score
第二種方法,利用&與*是互逆運算子
因為 *p == mike,所以(
*p).score 即是 mike.score
C語言學習筆記 結構體
1 結構體定義 結構體是將不同型別的資料按照一定的功能需求進行整體封裝,封裝的資料型別與大小均可以由使用者指定。2 結構體宣告 宣告乙個結構體型別的一般形式為 struct 結構體名 例如 struct book 注意 結構體名 的命名規範是全部使用大寫字母。3 定義結構體變數 定義結構體型別變數有...
C語言學習筆記 結構體
struct stu 順帶宣告 在結構體宣告的最後的分號前加stu1,stu2這樣的變數名,不需要寫結構體的名字。利用結構體名來宣告變數 struct stu stu3 struct stu stu1,stu2,stu3 這樣的語句中struct stu就可以理解成變數宣告前的int,double等...
C語言學習筆記 結構體
結構體是一種資料型別,用 struct 關鍵字來修飾,定義乙個結構體可以這樣 123 45 struct teacher 如果用 typedef 修飾,就可以直接使用 teacher 123 4567 typedef struct teacher teacher teacher null 為結構體申...