語法:返回值型別 (*函式名)(引數列表);
舉例說明:int (*func)(int m, int n);
例如:
1 typedef int (*func)(int m, int n);
1//1. 先宣告對應函式指標型別的函式
2int max(int num1, int
num2)36
7//2. 初始化
8 func fc = 0;//
表示函式指標不指向任何函式
9 func fp = max;//
表示函式指標指向max函式
1011
//3. 呼叫
12 max(10,20);//
直接呼叫
13 fp(10,20);//
使用函式指標呼叫
有兩種方式:
1//1.
2void usebigger(const
string &str1, const
string &str2,
3bool (const
string &s1, const
string &s2));4//
或者5void usebigger(const
string &str1, const
string &str2,
6bool (*)(const
string &s1, const
string &s2));
例如:
1int (*ff(int)) (int *p1, int n);
這句話的意思是:ff(int)
是乙個函式,帶有乙個int型形參,返回值型別為int (*) (int *p1, int n)
,也就是返回乙個函式指標。使用typedef可使該定義更簡明易懂:
1 typedef int (*pp)(int *p1, intn);
2 pp ff(int);
例如:
1extern
void ff(vectorvds);
2extern
void ff(unsigned int
n);3
4 typedef void (*pf1)(unsigned int
n);5
6 pf1 p = ff;//
ff(unsigned int)
指標的型別必須與過載函式的其中乙個版本精確匹配,否則導致編譯出錯。
c 學習筆記十七 函式指標與智慧型指標
一般的函式指標 語法 返回型別 函式名 參數列 使用示例 char pfun int char glfun int a void main 第一行定義了乙個指標變數pfun,它是乙個指向某種函式的指標,這種函式引數是乙個int型,返回值是char型別。只有第一句我們還無法使用這個指標,因為我們還未對...
C 基礎 指標,函式指標
變數指標,函式指標 include using namespace std 做函式宣告,函式的實現可以在呼叫的後面,但是宣告必須在呼叫的前面 int add int,int int mutiple int,int int dooperate int a,int b,int opimp int,int...
C函式指標基礎
函式指標可以像一般函式一樣,用於呼叫函式 傳遞引數。在如 c 這樣的語言中,通過提供乙個簡單的選取 執行函式的方法,函式指標可以簡化 函式指標只能指向具有特定特徵的函式。因而所有被同一指標運用的函式必須具有相同的引數和返回型別。乙個簡單的例子 include 函式原型 void sayhello 函...