C語言 指標與函式指標

2021-09-26 19:03:18 字數 1433 閱讀 1397

1、void * p

p是乙個指標,指標p指向乙個變數,變數的資料型別待定,使用過程需要強轉。

2、void * p()

p是乙個函式,p是函式名,函式的返回值是乙個指向void 型別的指標;指向void型別就是指向型別待定

3、void (*p)()

p乙個函式指標(指向函式入口位址),函式的返回值是void型別

4、void * (*p)()

p是乙個指向void*(void)的指標,即p是乙個指標,指向乙個函式,函式的返回值是void *

5、void ( * p() ) (void)

p是乙個函式,p先和()結合之後,函式的返回值是乙個指向void (void)的函式的指標

今天我們要說的是函式指標,即4、void * (*p)()

通常函式指標都回使用typedef定義一下型別

typedef ulong (

*pf_callback)

(int

,int

)typedef

struct li_cb_info_

li_cb_info_s;

//定義函式指標

typedef

int(

*pf_callbakck)

(int a,

int b)

;typedef

struct compute_st

compute_st;

//函式實現

intfuntion_sum

(int a,

int b)

intfuntion_sub

(int a,

int b)

intfuntion_mul

(int a,

int b)

intfuntion_div

(int a,

int b)

//將各個函式的位址註冊給全域性變數

compute_st g_compute_mgmt[4]

=,,,

};void

main()

}

執行結果

[root@localhost home]# gcc -o client clientm.c

[root@localhost home]#

[root@localhost home]# ./client

result is 30.

result is 5.

result is 12.

result is 3.

[root@localhost home]#

c語言函式指標與指標函式

include include include using namespace std 1 c語言函式指標 解釋 這是一種很特殊的指標,它的指向是乙個函式的入口 作用 該指標可以接受乙個函式的位址,代表這個函式執行函式的操作 函式指標舉例 下面是乙個函式指標pfunc,它只能指向返回值為float,...

C語言函式指標與指標函式

在大家剛開始學習c語言的時候,總是分不清函式指標和指標函式,就算是知道了它們之間的區別,也不了解它們的使用場景,我寫此部落格幫大家縷一縷,也幫我自己縷一縷 1 函式指標與指標函式的概念以及區別 指標函式 從名字上可以看出,首先它是乙個函式,指標指的是返回值為指標 函式指標 從名字上可以看出,首先他是...

C語言 函式指標與指標函式

寫在前面的話 博主是乙個小菜鳥,並且非常玻璃心!如果文中有什麼問題,請友好地指出來,博主查證後會進行更正,啾咪 每篇文章都是博主現階段的理解,如果理解的更深入的話,博主會不定時更新文章。typedef用於為各種資料型別定義新名字。語法 typedef unsigned char byte 在這個型別...