C 語言之結(jié)構(gòu)體

一. 結(jié)構(gòu)體定義

結(jié)構(gòu)體類型的定義需要用到關(guān)鍵字struct,student是結(jié)構(gòu)體類型名,大括號中的變量聲明表示結(jié)構(gòu)體成員,意思是該結(jié)構(gòu)體將來可以存儲何種類型的數(shù)據(jù).

struct student {

char name[100];

int age;

char sex;

};

在定義結(jié)構(gòu)體類型時使用匿名結(jié)構(gòu)體同時使用typedef對匿名結(jié)構(gòu)體做類型定義

typedef struct {

float x;

float y;

} point;

定義時,可直接調(diào)用point類型聲明變量


二. 結(jié)構(gòu)體賦初值

point p = {20.1,30.1};

其中初始值的個數(shù)與類型必須跟結(jié)構(gòu)體類型成員列表的類型和個數(shù)一致.結(jié)構(gòu)體是一個構(gòu)造類型,如果訪問結(jié)構(gòu)體變量的數(shù)據(jù)時,需要通過點語法連接對應(yīng)結(jié)構(gòu)體變量名和成員去訪問,例如p.x表示p結(jié)構(gòu)體的x值.

math.h頭文件下的函數(shù)?

1. pow(a,x) 計算a的x次方的函數(shù)

2. sqrt(a) 計算根號a的值

3. abs(a) 計算a的絕對值 整型用abs() 浮點型用 fabs()

結(jié)構(gòu)體中如果成員有字符串時,可以使用字符數(shù)組,也可以使用字符指針,但是在對該成員重新賦值時有所區(qū)別,字符數(shù)組描述時重新賦值需要使用strcpy函數(shù)進(jìn)行拷貝,字符指針描述時只需要直接賦值完成指針的重指向.

利用結(jié)構(gòu)體可以直接賦值的操作,可以簡化代碼量,進(jìn)行對數(shù)組直接賦值的操作,不用借助for循環(huán).


三. 嵌套結(jié)構(gòu)體

在結(jié)構(gòu)體聲明后,后結(jié)構(gòu)體中的成員可以用聲明過的結(jié)構(gòu)體聲明的變量.

為結(jié)構(gòu)體的嵌套


四. 結(jié)構(gòu)體所占內(nèi)存計算

為其成員的最大數(shù)據(jù)類型的最小整數(shù)劃分

例如:

typedef struct {

char a;//8

char b;

int c;

long d;//8

char e[20];//24

float f;

} Test;

該計算機(jī)為64位操作系統(tǒng)

即先找出最大類型所占的字節(jié)數(shù),即為long型8位,首先分配8個字節(jié),存取a,b,由于c的類型為int型,剩下6個字節(jié)的后4個正好存儲,d為long再進(jìn)行分配8個字節(jié),e為char類型的數(shù)組,長度為20,但結(jié)構(gòu)體分配內(nèi)存存在內(nèi)存對其規(guī)定,則需要24個字節(jié),f為float類型,正好e數(shù)組剩余4個字節(jié)補(bǔ)進(jìn).


五. 結(jié)構(gòu)體數(shù)組

與整型數(shù)組類似,即為一組相同結(jié)構(gòu)體類型的元素的有序序列.

int a[10] = {0};

point p[10] = {0};

point為上述定義的結(jié)構(gòu)體,即表示為一組具有point類型的元素的數(shù)組,元素個數(shù)為10.


六. 利用結(jié)構(gòu)體直接給數(shù)組直接賦值

typedef struct {

int a[3];

}Array;


Array array = {{1,2,3}};

Array copyArray = array;

通過結(jié)構(gòu)體的性質(zhì),結(jié)構(gòu)體的對象可以進(jìn)行直接賦值操作,即可以進(jìn)行對數(shù)組的直接賦值操作.

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末妄帘,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子扑庞,更是在濱河造成了極大的恐慌疫铜,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,734評論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件搪花,死亡現(xiàn)場離奇詭異盯桦,居然都是意外死亡拆内,警方通過查閱死者的電腦和手機(jī)连锯,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,931評論 3 394
  • 文/潘曉璐 我一進(jìn)店門归苍,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人运怖,你說我怎么就攤上這事拼弃。” “怎么了摇展?”我有些...
    開封第一講書人閱讀 164,133評論 0 354
  • 文/不壞的土叔 我叫張陵吻氧,是天一觀的道長。 經(jīng)常有香客問我,道長医男,這世上最難降的妖魔是什么砸狞? 我笑而不...
    開封第一講書人閱讀 58,532評論 1 293
  • 正文 為了忘掉前任捻勉,我火速辦了婚禮镀梭,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘踱启。我一直安慰自己报账,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 67,585評論 6 392
  • 文/花漫 我一把揭開白布埠偿。 她就那樣靜靜地躺著透罢,像睡著了一般。 火紅的嫁衣襯著肌膚如雪冠蒋。 梳的紋絲不亂的頭發(fā)上羽圃,一...
    開封第一講書人閱讀 51,462評論 1 302
  • 那天,我揣著相機(jī)與錄音抖剿,去河邊找鬼朽寞。 笑死,一個胖子當(dāng)著我的面吹牛斩郎,可吹牛的內(nèi)容都是我干的脑融。 我是一名探鬼主播,決...
    沈念sama閱讀 40,262評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼缩宜,長吁一口氣:“原來是場噩夢啊……” “哼肘迎!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起锻煌,我...
    開封第一講書人閱讀 39,153評論 0 276
  • 序言:老撾萬榮一對情侶失蹤妓布,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后宋梧,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體匣沼,經(jīng)...
    沈念sama閱讀 45,587評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,792評論 3 336
  • 正文 我和宋清朗相戀三年乃秀,在試婚紗的時候發(fā)現(xiàn)自己被綠了肛著。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,919評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡跺讯,死狀恐怖枢贿,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情刀脏,我是刑警寧澤局荚,帶...
    沈念sama閱讀 35,635評論 5 345
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響耀态,放射性物質(zhì)發(fā)生泄漏轮傍。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,237評論 3 329
  • 文/蒙蒙 一首装、第九天 我趴在偏房一處隱蔽的房頂上張望创夜。 院中可真熱鬧,春花似錦仙逻、人聲如沸驰吓。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,855評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽檬贰。三九已至,卻和暖如春缺亮,著一層夾襖步出監(jiān)牢的瞬間翁涤,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,983評論 1 269
  • 我被黑心中介騙來泰國打工萌踱, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留葵礼,地道東北人。 一個月前我還...
    沈念sama閱讀 48,048評論 3 370
  • 正文 我出身青樓虫蝶,卻偏偏與公主長得像章咧,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子能真,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,864評論 2 354

推薦閱讀更多精彩內(nèi)容

  • 一赁严、框架 1、Mac系統(tǒng)及常用工具粉铐、進(jìn)制;C數(shù)據(jù)類型疼约、常量變量、運算符蝙泼、表達(dá)式程剥、格式化輸入輸出 2、關(guān)系運算符汤踏、邏...
    師景福閱讀 689評論 0 2
  • C語言大總結(jié) 一织鲸、基礎(chǔ): 1、進(jìn)制溪胶、位權(quán)搂擦、1字節(jié)等于8位(位是計算機(jī)的最小儲存單位,字節(jié)是計算機(jī)最小存儲單元)哗脖、十...
    霧中探雪閱讀 2,828評論 1 36
  • 央視新聞的一條微博氨距,掀起了網(wǎng)友的一致吐槽。網(wǎng)友留言評論:敢問央視是不是用了跟奧運一樣的傳播資源位置在播出棘劣?是不是派...
    范兒青年閱讀 574評論 0 2
  • ————文章來自《十點讀書》 我常常能見到很多讀者的留言俏让,苦惱于父母不能理解自己人生的選擇,她們最痛苦的是呈础,父母總...
    a2d02c884892閱讀 229評論 0 0
  • android 中提供了很多實用高效的類舆驶,但往往都會被大部分人忽略橱健,例如今天說的RoundedBitmapDraw...
    litao0621閱讀 4,968評論 10 91