C C 函式指標

2021-07-04 03:39:25 字數 1651 閱讀 5747

學好函式指標有著較為重要的意義,如windows程式設計中wndclass結構體的 lpfnwndproc 成員就是乙個函式指標,下面介紹簡單的函式指標應用。

void toupper(char *);

void tolower(char *);

int round(double);

/**

*宣告了乙個名為pf的函式指標, 該函式指標可以指向乙個函式

*該函式特點:返回值為void型別,該函式接受乙個引數,引數型別為 char *型

**/

void (*pf)(char *);

/**

*宣告了乙個名為pk的函式指標, 該函式指標可以指向乙個函式

*該函式特點:返回值為void型別,該函式接受乙個引數,引數型別為 int *型

**/

void (*pk)(int *);

pf = toupper;//正確用法,toupper是函式toupper()的位址

pf = tolower;//正確

pf = round;//錯誤, round為錯誤型別的函式

pf = tolower();//無效,tolower不是位址

嘗試將不同返回值型別的函式賦值給函式指標:

錯誤資訊:

下面演示下正確的用法

#include void print_v(int);

int print_i(int);

int main()

void print_v(int value)

int print_i(int value)

程式截圖如下:

c C 指標函式

我們知道,指標式記憶體首位址,那是針對變數來說的,我也知道,程式是由變數,函式組成的。那麼函式的指標是怎麼定義的呢?我們也知道函式也是存放在記憶體的 區域,它同樣有首位址,關鍵是我們怎樣才能獲取它的位址呢?如果我們定義乙個 int test int a 的函式,那麼它的位址就是函式名字test,這一...

C C 函式指標

1.要指向的函式的宣告 返回型別 函式名 參數列 2.對應的函式指標的宣告,返回型別和參數列與要指向的函式宣告相同 返回型別 函式指標變數名 參數列 舉例 int func int a,int b 要指向的函式的宣告 int func ptr int a,int b 對應的函式指標的宣告 inclu...

C C 函式指標

宣告函式指標,必須指定指標指向的函式型別,例如 double pam int 正確的指標型別為 double pf int 與pam 宣告類似,將pam替換為 pf 這裡可以pf pam等式成立。include double betsy int double pam int void estimat...