在线不卡日本ⅴ一区v二区_精品一区二区中文字幕_天堂v在线视频_亚洲五月天婷婷中文网站

  • <menu id="lky3g"></menu>
  • <style id="lky3g"></style>
    <pre id="lky3g"><tt id="lky3g"></tt></pre>

    C|不完全類型與結(jié)構(gòu)體的自指向指針

    不完全類型指“函數(shù)之外、類型的大小不能被確定的類型”。

    總結(jié)一下,C 的類型分為:

    ① 對象類型(char、int、數(shù)組、指針、結(jié)構(gòu)體等)

    ② 函數(shù)類型

    ③ 不完全類型:結(jié)構(gòu)體標(biāo)記聲明、void*。

    以上的三種類型都可以派生為指針類型。

    對于男性(Man),他可能有妻子(wife)。如果是未婚男性,wife 就是NULL。所以,Man 這樣的類型,可以聲明成下面這樣:

    struct Man_tag { struct Woman_tag *wife; /*妻*/};

    作為妻子,可以這樣聲明:

    struct Woman_tag { struct Man_tag *husband; /*夫*/};

    這種情況下,struct Man_tag 和 struct Woman_tag 是相互引用的,所以無論先聲明哪一邊都很麻煩。

    可以像下面這樣通過先聲明結(jié)構(gòu)體標(biāo)記來回避以上問題:

    struct Woman_tag; // 將 tag 提前聲明struct Man_tag { struct Woman_tag *wife; /* 妻 */};struct Woman_tag { struct Man_tag *husband; /* 夫 */};

    在某些環(huán)境中,結(jié)構(gòu)體必須使用 typedef,所以,

    typedef struct Woman_tag Woman; // 提前對 tag 進行類型定義typedef struct { Woman *wife; /* 妻 */} Man;struct Woman_tag { Man *husband; /* 夫 */};

    對這種情況,在 Woman 類型的標(biāo)記被聲明的時候,還不知道其內(nèi)容,所以無法確定它的大小。這樣的類型就稱為不完全類型。

    因為不能確定大小,所以不能將不完全類型變成數(shù)組,也不能將其作為結(jié)構(gòu)體的成員,或者聲明為變量。但如果僅僅是用于取得指針,是可以使用不完全類型的。

    對于指針聲明來說,只要其聲明的類型存在(基本類型,或已定義或聲明的復(fù)合類型),便可以從其派生出指針類型。

    上面的結(jié)構(gòu)體 Man,就是將 Woman 類型的指針作為它的成員。之后,在定義 struct Woman_tag 的內(nèi)容的時候,Woman 就不是不完全類型了。

    在 C 標(biāo)準(zhǔn)中,void 類型也被歸類為不完全類型。

    void*類型表示為類型待定的指針,可以被賦值一個任何類型的地址,只要在指針本身操作或操作指針的指向目標(biāo)時,類型顯式強制轉(zhuǎn)換為原始或期望的類型即可。 指針可以指向為不完全類型,同時,指針不論其目標(biāo)類型如何,其大小都是固定的一個字長,所以在結(jié)構(gòu)體定義中,可以定義一個自指向的指針,這樣的指針并不影響結(jié)構(gòu)體的整體內(nèi)存分配或布局,所以被定義為鏈?zhǔn)?/a>存儲(用來關(guān)聯(lián)數(shù)據(jù)關(guān)系)的語法機制:

    struct Node{ int data; struct Node* next; // 指針本身的大小確定(一個字長),與目標(biāo)類型無關(guān)};

    ref

    前橋和彌《征服C指針》

    -End-

    鄭重聲明:本文內(nèi)容及圖片均整理自互聯(lián)網(wǎng),不代表本站立場,版權(quán)歸原作者所有,如有侵權(quán)請聯(lián)系管理員(admin#wlmqw.com)刪除。
    用戶投稿
    上一篇 2022年7月27日 12:21
    下一篇 2022年7月27日 12:21

    相關(guān)推薦

    • 存儲過程語法(sql server存儲過程語法)

      今天小編給各位分享存儲過程語法的知識,其中也會對sql server存儲過程語法進行解釋,如果能碰巧解決你現(xiàn)在面臨的問題,別忘了關(guān)注本站,現(xiàn)在開始吧! oracle存儲過程基本語法…

      2022年11月26日
    • 什么是內(nèi)容營銷策略如何策劃一套成功的內(nèi)容營銷策略

      很多時候,營銷人員會在創(chuàng)作營銷內(nèi)容時感到沮喪,這也是很多企業(yè)至今沒用好數(shù)字化營銷工具的重要原因之一。 舉個例子,您可能會花上數(shù)小時期待制作一些令人驚嘆的東西,實際卻是得到很少的受眾…

      2022年11月25日
    • 園屬于什么結(jié)構(gòu)(園的結(jié)構(gòu)和部首)

      園 yuán:全包圍結(jié)構(gòu),平穩(wěn)端正中稍帶左收右展。 外部“口” 體態(tài)端莊,稍抗肩,稍帶左輕右重。左豎起筆稍抖,豎身勿重,稍左斜,垂露收筆;第二筆橫折壓著左豎起筆,橫畫稍抗肩,不要重…

      2022年11月24日
    • 1千克等于多少磅

      克,此定義在1958年被美國以及其他英聯(lián)邦會員國承認(rèn)換算回來,一千克等于262磅,一磅等于037千克英國在1963年開始,依據(jù)度量衡法案的規(guī);1 磅=16 盎司=04536 千克 …

      2022年11月24日
    • 《原神》畫外旅照青植之篇第五天怎么過?畫外旅照第五天過關(guān)方法

      原神的畫外旅照活動每天都會更新一篇,玩家完成對應(yīng)拍照任務(wù)就可以獲得獎勵。有玩家想知道原神畫外旅照青植之篇第五天怎么過,下面就帶來原神畫外旅照第五天過關(guān)方法,感興趣的小伙伴一起來看看…

      2022年11月21日
    • 直播帶貨話術(shù):萬能暖場互動順口溜大全(直播帶貨流程話術(shù))

      現(xiàn)在直播帶貨這么火,人人都想來嘗試一下,但是直播這個行業(yè)也不是每個人都合適、都可以做的。我們在看直播的時候,有些主播的話術(shù)讓人很舒服,大家就會捧場,相對的,有的人直播就顯得很尷尬?!?/p>

      2022年11月18日
    • 京東店鋪類型有哪些京東入駐有什么資質(zhì)要求

      今天的互聯(lián)網(wǎng)發(fā)展迅速,讓傳統(tǒng)企業(yè)有了更多選擇,但也同樣也對剛觸網(wǎng)的商家增添了許多迷茫,近日知舟電商就收到很多商家朋友詢問京東入駐相關(guān)問題,今天知舟君就給大家分享下。 一.京東入駐準(zhǔn)…

      2022年11月18日
    • 手淘搜索是自然流量嗎(手淘搜索流量怎么提高)

      作為一個賣家,我們都應(yīng)該知道,現(xiàn)在店鋪的流量大部分來自移動端,也就是我們說的手機端流量。隨著智能手機的發(fā)展及網(wǎng)速的提升,手機購物已成為常態(tài)。而淘寶也一直嘗試著從一個購物平臺往社交平…

      2022年11月18日
    • 暴雪將在中國大陸暫停多數(shù)游戲服務(wù) 網(wǎng)易回應(yīng):將為玩家服務(wù)到最后一刻

      11月16日,暴雪娛樂宣布與網(wǎng)易協(xié)議將到期,將在中國大陸暫停多數(shù)游戲服務(wù)。 針對該消息,網(wǎng)易表示,網(wǎng)易一直在盡最大努力和動視暴雪公司談判,希望推進續(xù)約。經(jīng)過長時間的談判,我們?nèi)匀粺o…

      2022年11月17日
    • 怎么刪除自己的追評(淘寶追評可以刪除嗎)

      一、淘寶店鋪每個評價類型的處理方案都是不同的,那具體哪些評價類型該如何區(qū)分呢? 1、主評為好評時:不支持修改或者刪除評價的,若中評/差評改為好評,也不可修改或刪除 ; 2、當(dāng)主評為…

      2022年11月17日

    聯(lián)系我們

    聯(lián)系郵箱:admin#wlmqw.com
    工作時間:周一至周五,10:30-18:30,節(jié)假日休息