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

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

我如何理解復(fù)雜的函數(shù)聲明?

我如何理解復(fù)雜的函數(shù)聲明?

C
白板的微信 2019-08-31 14:33:02
我如何理解以下復(fù)雜的聲明?char (*(*f())[])();char (*(*X[3])())[5];void (*f)(int,void (*)()); char far *far *ptr;typedef void (*pfun)(int,float);int **(*f)(int**,int**(*)(int **,int **));
查看完整描述

3 回答

?
慕尼黑的夜晚無繁華

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

正如其他人所指出的那樣,cdecl是這項(xiàng)工作的正確工具。


如果您想在沒有cdecl幫助的情況下理解這種聲明,請嘗試從內(nèi)到外和從右到左閱讀


從列表中取一個(gè)隨機(jī)示例從 X開始,這是聲明/定義的標(biāo)識符(以及最里面的標(biāo)識符):char (*(*X[3])())[5];


char (*(*X[3])())[5];

         ^

X是


X[3]

 ^^^

X是 3的數(shù)組


(*X[3])

 ^                /* the parenthesis group the sub-expression */

X是一個(gè)3 指針的數(shù)組


(*X[3])()

       ^^

X是一個(gè)3個(gè)指針的數(shù)組,用于 接受未指定(但固定)數(shù)量的參數(shù)


(*(*X[3])())

 ^                   /* more grouping parenthesis */

X是一個(gè)由3個(gè)指針組成的數(shù)組,用于接受未指定(但固定)數(shù)量的參數(shù) 并返回指針


(*(*X[3])())[5]

            ^^^

X是一個(gè)3個(gè)指針的數(shù)組,用于接受未指定(但固定)數(shù)量的參數(shù)并返回指向 5的數(shù)組的指針


char (*(*X[3])())[5];

^^^^                ^

X是一個(gè)3個(gè)指針的數(shù)組,用于接受未指定(但固定)數(shù)量的參數(shù)并返回指向5個(gè) char 數(shù)組的指針。


查看完整回答
反對 回復(fù) 2019-08-31
?
皈依舞

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

聽起來像是cdecl工具的工作:


cdecl> explain char (*(*f())[])();

declare f as function returning pointer to array of pointer to function returning char

我四處尋找該工具的官方主頁,但找不到一個(gè)看似真實(shí)的主頁。在Linux中,您通常可以期望您選擇的分發(fā)包含該工具,因此我只是安裝它以生成上述示例。


查看完整回答
反對 回復(fù) 2019-08-31
  • 3 回答
  • 0 關(guān)注
  • 420 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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