小甲魚結構體與共用體02
原始碼①:
原始碼②:做乙個簡單的通訊錄
//簡單的通訊錄
原始碼③:
#include
struct stu
boy1 =
;void
main()
指向結構體型別資料的指標:
結構指標變數說明的一般形式:struct 結構體 *結構指標變數名
例如,在原始碼③中定義了stu這個結構,如要說明乙個指向stu的指標變數pstu,可寫為:struct stu *pstu;
當然也可在定義stu結構時同時說明pstu。與前面討論的各類指標變數相同,結構指標變數也必須要先賦值後才能使用。
賦值是把結構變數的首位址賦予該指標變數,不能把結構名賦予該指標變數。
struct stu
boy;
如果boy是被說明為stu型別的結構變數,則:
pstu = &boy是正確的。
pstu = &stu是錯誤的。為什麼呢?
因為,結構名和結構變數是兩個不同的概念,不能混淆。結構名只能表示乙個結構形式,編譯系統並不對它分配記憶體空間。
只有當某變數被說明為這種型別的結構時,才對該變數分配儲存空間。
因此上面&stu這種寫法是錯誤的,不可能去取乙個結構名的首位址。有了結構指標變數,就能方便地訪問結構變數的各個成員。
練習:寫乙個對候選人得票的統計程式。設有3個候選人,每次輸入乙個得票的候選人的名字,要求最後輸出各人得票結果。
結構體與共用體
1.定義乙個機構體的形式 struct 結構名 2.定義結構體變數 變數名表列 變數名表列 3.結構體成員的表示方法 結構變數名.成員名 例如 boy1.num 如果成員本身又是乙個結構則必須逐級找到最低階的成員才能使用。例如 boy1.birthday.month 4.結構體陣列 方法和結構變數相...
結構體與共用體
結構體的作用 在網路協議 通訊控制 嵌入式系統的c c 程式設計中,我們經常要傳送的不是簡單的位元組流 char型陣列 而是多種資料組合在一起的乙個整體。其表現形式是乙個結構體。簡單來說,結構體就是用來封裝資料的。結構體的定義 struct student struct student stu st...
結構體與共用體
結構體和共用體 聯合體 是自定義的資料型別,常用於處理非數值型資料,使用如 鍊錶 佇列 樹等。1.結構體定義 結構體是用其他型別構造出來的資料型別。結構體型別如下 struct student 定義乙個結構體變數如下 struct student stu1 stu1.age 32 stu1.name...