色yeye在线视频观看_亚洲人亚洲精品成人网站_一级毛片免费播放_91精品一区二区中文字幕_一区二区三区日本视频_成人性生交大免费看

當(dāng)前位置:首頁 > 嵌入式培訓(xùn) > 嵌入式學(xué)習(xí) > 學(xué)習(xí)筆記 > 嵌入式學(xué)習(xí)筆記:c語言結(jié)構(gòu)體學(xué)習(xí)方法

嵌入式學(xué)習(xí)筆記:c語言結(jié)構(gòu)體學(xué)習(xí)方法 時間:2018-09-04      來源:未知

C語言結(jié)構(gòu)體學(xué)習(xí)還是很簡單的,有些人對結(jié)構(gòu)體的學(xué)習(xí)很迷茫,那就是因為你沒有掌握方法來學(xué),今天分享一下學(xué)習(xí)C語言結(jié)構(gòu)體的方法,一起來看:

【1】定義

【2】結(jié)構(gòu)體類型變量的定義方法

【3】結(jié)構(gòu)體普通變量的使用形式

【4】結(jié)構(gòu)體大小

【5】結(jié)構(gòu)體指針

【6】結(jié)構(gòu)體數(shù)組

【7】結(jié)構(gòu)體數(shù)組的使用

【1】定義

不同類型的數(shù)據(jù)是互相聯(lián)系組成了一個有機的整體。此時,就要用到一種新的構(gòu)造類型數(shù)據(jù)——結(jié)構(gòu)體(structure),簡稱結(jié)構(gòu)。

定義一個結(jié)構(gòu)體類型的一般形式為:

struct 結(jié)構(gòu)體名

{

數(shù)據(jù)類型

數(shù)據(jù)類型

成員名1;

成員名2;

數(shù)據(jù)類型

成員名n;

};

在大括號中的內(nèi)容也稱為“成員列表”或“域表”,其中每個成員名的命名規(guī)則與變量名相同;數(shù)據(jù)類型可以是基本變量類型和數(shù)組類型,或者是一個結(jié)構(gòu)體類型。用分號“;”作為結(jié)束符。整個結(jié)構(gòu)的定義也用分號作為結(jié)束符

說明:結(jié)構(gòu)體類型中的成員名可以與程序中的變量名相同,二者并不代表同一對象,編譯程序可以自動對它們進行區(qū)分。

最后,總結(jié)一下結(jié)構(gòu)體類型的特點:

(1)結(jié)構(gòu)體類型是用戶自行構(gòu)造的。

(2)它由若干不同的基本數(shù)據(jù)類型的數(shù)據(jù)構(gòu)成。

(3)它屬于C語言的一種數(shù)據(jù)類型,與整型、實型相當(dāng)。

//定義它時不分配空間,只有用它定義變量時才分配空間。//注意:結(jié)構(gòu)體需要在程序的最上面定義//注意:定義一個結(jié)構(gòu)體時,沒有開辟空間

【2】結(jié)構(gòu)體類型變量的定義方法

這是C語言中定義結(jié)構(gòu)體類型變量最常見的方式

struct 結(jié)構(gòu)體名

(1)先定義結(jié)構(gòu)體類型再定義變量 {

名 成員列表;

};

struct 結(jié)構(gòu)體名變量名;

struct 結(jié)構(gòu)體名

(2)在定義類型的同時定義變量 {

成員列表;

}變量名;

struct//沒有結(jié)構(gòu)體名

(3)直接定義結(jié)構(gòu)類型變量 {

成員列表

}變量名;

struct stu//有名結(jié)構(gòu)體

{

int id;

char name[N];

struct//一般在結(jié)構(gòu)體內(nèi)部再定義一個結(jié)構(gòu)體,則需

要使用無名結(jié)構(gòu)體

(4)嵌套定義結(jié)構(gòu)體變量{

int year;

int mon;

int day;

}birthday; birthday為stu內(nèi)部成員的變量的名字

int score;

char sex;

};

【3】結(jié)構(gòu)體普通變量的使用形式

使用結(jié)構(gòu)體變量訪問結(jié)構(gòu)體成員

結(jié)構(gòu)體變量的成員用以下一般形式表示:

結(jié)構(gòu)體變量名.成員名

【4】結(jié)構(gòu)體大小

一個結(jié)構(gòu)體變量占用內(nèi)存的實際大小,也可以利用sizeof求出。它的運算表達式

為:

sizeof(運算量)

注意: 4 字節(jié)對齊,

若某一變量所占字節(jié)為4字節(jié)或是4字節(jié)的倍數(shù)的情況下(int、float、double、long),它之前的變量所占空間若不為4的倍數(shù)(char、short),則需將其補齊為4的倍數(shù)

例如:char ch;

int i; // 則ch同樣占據(jù)4字節(jié)

char ch2;

short s;

long l; // ch2 與 s 共同占據(jù)4字節(jié),l 占據(jù) 4 字節(jié)

【5】結(jié)構(gòu)體指針

//結(jié)構(gòu)體指針變量訪問成員,通常使用x->或者(*x)

【6】結(jié)構(gòu)體數(shù)組

具有相同結(jié)構(gòu)體類型的結(jié)構(gòu)體變量也可以組成數(shù)組,稱它們?yōu)榻Y(jié)構(gòu)體數(shù)組。

結(jié)構(gòu)體數(shù)組的定義形式如下:

struct 結(jié)構(gòu)體名

(1)先定義結(jié)構(gòu)體類型,再用它定義結(jié)構(gòu)體數(shù){

組。成員表列;

};

struct 結(jié)構(gòu)體名數(shù)組名[元素個數(shù)]

(2)在定義結(jié)構(gòu)體類型同時定義結(jié)構(gòu)體數(shù)組。結(jié)構(gòu)體數(shù)組的定義形式如下:

struct 結(jié)構(gòu)體名

{

成員表列;

}數(shù)組名[元素個數(shù)];

結(jié)構(gòu)體數(shù)組的定義形式如下:

struct//沒有結(jié)構(gòu)體名

(3)直接定義結(jié)構(gòu)體數(shù)組{

成員表列;

}數(shù)組名[元素個數(shù)];

【7】結(jié)構(gòu)體數(shù)組的使用

(1)引用某一元素中的成員。

(2)可以將一個結(jié)構(gòu)體數(shù)組元素值賦給同一結(jié)構(gòu)體類型的數(shù)組中的另一個元素,

或賦給同一類型的變量。

//結(jié)構(gòu)體數(shù)組本質(zhì)上是一個數(shù)組,所以不能通過數(shù)組名進行賦值

struct stu t[3];

//t = s;

//數(shù)組元素相當(dāng)于變量,所以可以使用結(jié)構(gòu)體數(shù)組元素進行賦值 t[0] = s[0];

t[1] = s[1];

t[2] = s[2];

(3)不能把結(jié)構(gòu)體數(shù)組元素作為一個整體直接進行輸入輸出。

上一篇:嵌入式學(xué)習(xí)筆記:c語言輸入輸出函數(shù)基礎(chǔ)總結(jié)

下一篇:嵌入式學(xué)習(xí)筆記:進程間的通信方式總結(jié)

熱點文章推薦
華清學(xué)員就業(yè)榜單
高薪學(xué)員經(jīng)驗分享
熱點新聞推薦
前臺專線:010-82525158 企業(yè)培訓(xùn)洽談專線:010-82525379 院校合作洽談專線:010-82525379 Copyright © 2004-2022 北京華清遠(yuǎn)見科技集團有限公司 版權(quán)所有 ,京ICP備16055225號-5京公海網(wǎng)安備11010802025203號

回到頂部

主站蜘蛛池模板: 亚洲色无码专线精品观看 | 天天躁夜夜躁狠狠躁2021 | 国产97视频人人做人人爱 | 免费高清特级毛片A片 | 日日碰狠狠躁久久躁综合小说 | 国产亚洲欧美在线观看三区 | 大地影院mv高清在线观看免费 | 亚洲成AV人在线播放无码 | 亚洲精品国产自在久久 | 高H禁伦餐桌上的肉伦NP | 无码高潮少妇多水多毛 | 亚洲精品久久国产高清情趣图文 | 国产精品乱子伦xxxx裸 | 无码熟妇人妻AV在线网站 | 成全视频在线观看视频在线播放 | baoyu121永久免费网站 | 久章草在线精品视频免费观看 | 樱花视频在线观看进击的巨人第三季 | 在线视频99 | 精品人妻无码一区二区三区抖音 | 亚洲一区自拍高清亚洲精品 | 久久亚洲国产成人精品性色 | 中文字幕高清在线免费播放 | 高清萌白酱国产福利甜味弥漫 | 欧美综合婷婷欧美综合五月 | 好爽好紧好大的免费视频 | 国内精品自国内精品66J影院 | 日本一级淫片免费放 | 久久精品国产亚洲AV无码麻豆 | 亚洲欧美日韩专区 | 亚洲熟妇无码AV不卡在线 | 国产精品免费_区二区三区观看 | 玖玖啪 | 97sesewang| 四虎影视国产 | 亚洲日韩性欧美中文字幕 | 暴力调教一区二区三区 | 日韩精品人成在线播放 | 欧美成人A猛片在线观看 | 无码a级毛片免费视频内谢5j | 亚洲精品久久无码老熟妇 |