亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

void*(*)(void*)何解?

void*(*)(void*)何解?

皈依舞 2021-02-03 13:07:31
void*(*)(void*)何解?
查看完整描述

2 回答

?
倚天杖

TA貢獻1828條經驗 獲得超3個贊

參數void*(*)(void*)是一個函數指針,前面的void為返回值類型,后面的void*為參數類型。

指向函數的指針變量的一般定義形式為:數據類型(*指針變量名)(函數參數列表)

函數名是可以缺省的,作為參數傳遞的時候會去調和void*(*)(void*)這個類型相匹配的函數的。

例如:

int func(int x); /* 聲明一個函數 */

int (*f) (int x); /* 聲明一個函數指針 */

f=func; /* 將func函數的首地址賦給指針f */

或者使用下面的方法將函數地址賦給函數指針:

f = &func;

賦值時函數func不帶括號,也不帶參數,由于func代表函數的首地址,因此經過賦值以后,指針f就指向函數func(x)的代碼的首地址。

擴展資料:

“函數指針”本身首先應是指針變量,只不過該指針變量指向函數。這正如用指針變量可指向整型變量、字符型、數組一樣,這里是指向函數。如前所述,C在編譯時,每一個函數都有一個入口地址,該入口地址就是函數指針所指向的地址。

有了指向函數的指針變量后,可用該指針變量調用函數,就如同用指針變量可引用其他類型變量一樣,在這些概念上是大體一致的。函數指針有兩個用途:調用函數和做函數的參數。



查看完整回答
反對 回復 2021-03-28
  • 2 回答
  • 0 關注
  • 596 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號