您好,登錄后才能下訂單哦!
今天小編給大家分享一下C++ Struct結(jié)構(gòu)體怎么使用的相關(guān)知識(shí)點(diǎn),內(nèi)容詳細(xì),邏輯清晰,相信大部分人都還太了解這方面的知識(shí),所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來(lái)了解一下吧。
C語(yǔ)言聲明結(jié)構(gòu)體的幾種方式
struct 結(jié)構(gòu)體名
{
數(shù)據(jù)類型 變量名1;
};
其中的數(shù)據(jù)類型既可以是約定好的int、char、float等數(shù)據(jù)類型,也可以是結(jié)構(gòu)體類型(在定義此處結(jié)構(gòu)體之前已經(jīng)定義完成)。
例如:
struct student { char name[20]; int id; float chinese; float english; float math; };
結(jié)構(gòu)體的調(diào)用:
struct 結(jié)構(gòu)體 結(jié)構(gòu)體名;
結(jié)構(gòu)體名.變量名 =
例如:
struct student s1; s1.id = 20191028456; s1.math = 95;
C++語(yǔ)言將struct當(dāng)成類來(lái)處理的,所以C++的struct可以包含C++類的所有東西,例如構(gòu)造函數(shù),析構(gòu)函數(shù),友元等。
與C中struct比較明顯的一個(gè)區(qū)別是,C++允許在聲明結(jié)構(gòu)體變量時(shí)省略關(guān)鍵字struct
struct student { char name[20]; int id; float chinese; float english; float math; };
student s2; s2.id = 20191031256; s2.math = 60;
C++也支持其他集中結(jié)構(gòu)體定義方式
1.結(jié)構(gòu)體定義時(shí)同時(shí)聲明結(jié)構(gòu)體變量
struct student { char name[20]; int id; float chinese; float english; float math; }st3,st4;
2.省略結(jié)構(gòu)體名稱同時(shí)聲明結(jié)構(gòu)體變量
struct { char name[20]; int id; float chinese; float english; float math; }st5;
這種方式同樣可以使用st5.id去訪問成員,但是這種類型沒有名稱,不能使用名稱去創(chuàng)建這種類型的結(jié)構(gòu)體變量,不建議使用。
使用typedef
定義可以不寫struct,定義變量的時(shí)候方便許多。
例如:
typedef struct student { char name[20]; int id; float chinese; float english; float math; }student_inf;
在使用時(shí),可直接用student_inf
來(lái)定義變量,如:
student_inf s1; s1.chinese = 95; s1.id = 1;
以上就是“C++ Struct結(jié)構(gòu)體怎么使用”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會(huì)為大家更新不同的知識(shí),如果還想學(xué)習(xí)更多的知識(shí),請(qǐng)關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。