第十一章結(jié)構(gòu)體和共用體
【考點1】結(jié)構(gòu)體類型的說明
結(jié)構(gòu)體是若干個類型數(shù)據(jù)的集合,
結(jié)構(gòu)體類型說明格式:
struct 類型名 {類型1 成員名1;類型2 成員名2;……};,以上整個部分是一個數(shù)據(jù)類型,與整型的int是同樣地位?捎胻ypedef把結(jié)構(gòu)體類型替換成一個只有幾個字母的簡短標識符。
【考點2】結(jié)構(gòu)體變量的定義
結(jié)構(gòu)體變量是用說明的結(jié)構(gòu)體類型所定義的一個變量,與結(jié)構(gòu)體類型不是一回事。一個結(jié)構(gòu)體變量所占字節(jié)數(shù)為其所有成員所占字節(jié)數(shù)之和。如struct stu{char name[10];int age;} a,b;則表明定義了兩個結(jié)構(gòu)體變量a,b,每個變量占14個字節(jié)。a,b與int i,j;中的變量i,j是同樣地位。typedef 考的很多(教材150頁例6)。
【考點3】結(jié)構(gòu)體成員的引用
引用成員可用以下3種方式:(1)結(jié)構(gòu)體變量名.成員名;(2)指針變量名->成員名:(3)(*指針變量名).成員名。點(.)稱為成員運算符,箭頭(->)稱為結(jié)構(gòu)指向運算符。
【考點5】共用體
共用體的使用格式與結(jié)構(gòu)體相似,共用體定義的關(guān)鍵字為union,共用體所占字節(jié)數(shù)是所有成員中字節(jié)數(shù)最大的那個。
union TT
{ int a;
char ch[2];} t1 ;
main()
{t1.a=0x1234;
printf("%x\n",t1.ch[0] );
printf("%x\n",t1.ch[1] );}
考點一: sizeof (struct TT) = 2;
考點二: TT t1 ; t1.a=0x1234;
那么 ch[0]=0x 34; ch[1]=0x12
7)結(jié)構(gòu)體和共用體以及鏈表要掌握最簡單的。typedef 考的很多,而且一定要知道如何引用
結(jié)構(gòu)體中的各個變量,鏈表中如何填加和刪除節(jié)點,以及何如構(gòu)成一個簡單的鏈表,一定記
住鏈表中的節(jié)點是有兩個域,一個放數(shù)值,一個放指針。
【考點4】鏈表
鏈表是由一個個結(jié)點構(gòu)成的,一個結(jié)點就是一個結(jié)構(gòu)體變量。每個結(jié)點可以分為數(shù)據(jù)域與指針域兩個部分,數(shù)據(jù)域用來存放要存儲的數(shù)據(jù),指針域用來指向下一個結(jié)點。鏈表是考試中的難點,在C語言和公共基礎(chǔ)部分都會考到,要掌握,鏈表中如何增加和刪除節(jié)點(每年都考),以及何如構(gòu)成一個簡單的鏈表,一定記住鏈表中的節(jié)點是有兩個域,一個放數(shù)值,一個放指針。(教材162頁例2一定要看懂)
相關(guān)推薦:
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |