一、格式
指針名前*號,并且將*和指針名用括號括起來
例如:
//指針名為pf,指向一個返回值為bool,參數為兩個const string&的函數 bool (*pf)(const string&, const string&); //這個不是函數指針,而是一個返回值為bool*的pf函數 bool *pf(const string&, const string&);
二、函數指針的賦值
可以直接將函數名賦值給函數指針,或者在函數名前加&符號都可以
bool lengthCompare(const string&, const string&);
bool (*pf)(const string&, const string&);
int main()
{
pf = lengthCompare; //正確
pf = &lengthCompare;//正確
return 0;
}
三、通過函數指針調用函數
調用方式
如果pf是一個函數指針,那么*pf就是該指針所指向的函數,所以(*pf)()就是調用該函數
- </
ANSI C標準允許程序員將(*pf)()簡寫為pf(),但是一定要記住這種寫法是一種簡寫形式