第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

請(qǐng)教下struct,typedef在編譯器中聲明的過(guò)程是怎樣的?

請(qǐng)教下struct,typedef在編譯器中聲明的過(guò)程是怎樣的?

C++ C
慕的地6264312 2022-05-12 15:11:44
總的來(lái)說(shuō),問(wèn)題是struct,typedef在編譯器中聲明的過(guò)程是怎樣的?在第一個(gè)與第二個(gè)結(jié)構(gòu)體聲明中為什么能夠聲明指向自身類型的指針?在第三個(gè)結(jié)構(gòu)體聲明中為什么不能用新類型名來(lái)聲明呢? 這是在說(shuō),編譯器的步驟是:struct Node1(知道有這個(gè)類型了)----Node2* next(再開始分析這句話)----Node2(最后才在知道有這個(gè)新類型名) 嗎?#include<iostream>using namespace std;struct Student{int date;struct Studen* next;};typedef struct Node1{int date;Node1* next;}randow;typedef struct{int date;Node2* next;}Node2;void main(){}修正一下問(wèn)題1總的來(lái)說(shuō),問(wèn)題是struct,typedef在編譯器中聲明的過(guò)程是怎樣的?2在第一個(gè)與第二個(gè)結(jié)構(gòu)體聲明中為什么能夠聲明指向自身類型的指針?3在第三個(gè)結(jié)構(gòu)體聲明中為什么不能用新類型名來(lái)聲明呢? 這是在說(shuō),編譯器的步驟是:struct(知道有這個(gè)類型,但它沒(méi)有名字)----Node2* next(開始分析這句話)----Node2(最后才知道有這個(gè)新類型名) ,所以不能用新類型名來(lái)聲明 結(jié)構(gòu)體中的成員 ?
查看完整描述

1 回答

?
侃侃爾雅

TA貢獻(xiàn)1801條經(jīng)驗(yàn) 獲得超16個(gè)贊

指針是兩個(gè)變量,一個(gè)是指針本身,一個(gè)是指向的對(duì)象。
你聲明結(jié)構(gòu)體的時(shí)候里面有個(gè)指針,不管指什么,實(shí)例化的時(shí)候總能夠開辟出內(nèi)存來(lái),指針就是4字節(jié),指針前面的類型在聲明的時(shí)候沒(méi)有什么用,只有在解引用的時(shí)候才有用,所以聲明的時(shí)候指不指向自身沒(méi)有區(qū)別。但是不能定義該類的對(duì)象,類還沒(méi)有定義就有了類對(duì)象,這不合邏輯,然后也沒(méi)法開辟內(nèi)存。
其他的就是基礎(chǔ),要聲明某個(gè)類型的變量,你得事先告訴編譯器有這個(gè)類型。

查看完整回答
反對(duì) 回復(fù) 2022-05-16
  • 1 回答
  • 0 關(guān)注
  • 150 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)