溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

C++?Struct結(jié)構(gòu)體怎么使用

發(fā)布時(shí)間:2023-03-31 11:49:20 來(lái)源:億速云 閱讀:90 作者:iii 欄目:開發(fā)技術(shù)

今天小編給大家分享一下C++ Struct結(jié)構(gòu)體怎么使用的相關(guān)知識(shí)點(diǎn),內(nèi)容詳細(xì),邏輯清晰,相信大部分人都還太了解這方面的知識(shí),所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來(lái)了解一下吧。

一.C語(yǔ)言 Strcut基本用法

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++Strcut基本用法

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 定義結(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è)資訊頻道。

向AI問一下細(xì)節(jié)

免責(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)容。

AI