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

為了賬號安全,請及時綁定郵箱和手機立即綁定

int (*pquadrate)(int a) = &quadrate;是啥意思?

不太明白(*pquadrate)后面為啥還有個(int a) ??

正在回答

5 回答

這是函數(shù)指針聲明。

這是將pquadrate聲明為函數(shù)指針,它指向的是有一個int型參數(shù),返回值為int的函數(shù)。這語句同時將pquadrate初始化為quadrate的地址(顯然quadrate應該是個函數(shù)名)。


一步一步講這個聲明:

  • 這語句聲明的是pquadrate變量,前面有個*,而且是用小括號和變量名括起來的(*pquadrate),表明這個變量名優(yōu)先和*結合。聲明變量時前面有*就代表這個變量是指針,所以pquadrate是個指針。那它指向什么呢?

  • 接著看,后面有小括號,前面有類型,表明是個函數(shù)。參數(shù)就是int a,返回值是int型。所以pquadrate是指向這樣的函數(shù)的指針。

7 回復 有任何疑惑可以回復我~
#1

帥踢鍋 提問者

請問,后面的參數(shù)int a應該不需要與quadrate函數(shù)聲明中的一致吧?另外,可以否省略寫成(*pquadrate)(int),這樣做規(guī)范嗎?
2015-07-30 回復 有任何疑惑可以回復我~
#2

onemoo 回復 帥踢鍋 提問者

完全可以不寫a。 函數(shù)聲明中的參數(shù)列表只需要寫出各個參數(shù)的類型,寫不寫參數(shù)名無所謂(其實編譯器也不理會你寫的名字)。
2015-07-31 回復 有任何疑惑可以回復我~
#3

帥踢鍋 提問者

回答非常詳細!感謝onemoo同學
2015-07-31 回復 有任何疑惑可以回復我~

厲害了,大神呀

0 回復 有任何疑惑可以回復我~

厲害 。。。


0 回復 有任何疑惑可以回復我~

原來如此

0 回復 有任何疑惑可以回復我~

謝謝你的解釋!

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

int (*pquadrate)(int a) = &quadrate;是啥意思?

我要回答 關注問題
微信客服

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

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

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