函數(shù)指針的定義是什么
顧名思義,函數(shù)指針就是函數(shù)的指針。它是一個指針,指向一個函數(shù)。看例子:
A),char * (*fun1)(char * p1,char * p2);
B),char * *fun2(char * p1,char * p2);
C),char * fun3(char * p1,char * p2);
數(shù)組參數(shù)等效的指針參數(shù)
數(shù)組的數(shù)組:char a[3][4] 數(shù)組的指針:char (*p)[10]
指針數(shù)組: char *a[5] 指針的指針:char **p
看看上面三個表達(dá)式分別是什么意思?
C):這很容易,fun3 是函數(shù)名,p1,p2 是參數(shù),其類型為char *型,函數(shù)的`返回值為char *類型。
B):也很簡單,與C)表達(dá)式相比,唯一不同的就是函數(shù)的返回值類型為char**,是個二級指針。
A):fun1 是函數(shù)名嗎?回憶一下前面講解數(shù)組指針時的情形。我們說數(shù)組指針這么定義或許更清晰:
int (*)[10] p;
再看看A)表達(dá)式與這里何其相似!明白了吧。這里fun1 不是什么函數(shù)名,而是一個指針變量,它指向一個函數(shù)。這個函數(shù)有兩個指針類型的參數(shù),函數(shù)的返回值也是一個指針。
同樣,我們把這個表達(dá)式改寫一下:char * (*)(char * p1,char * p2) fun1; 這樣子是不是好看一些呢?只可惜編譯器不這么想
【函數(shù)指針的定義是什么】相關(guān)文章:
javascript中定義函數(shù)的區(qū)別11-15
Javascript函數(shù)的定義和用法分析11-15
PHP如何自定義函數(shù)11-25
閏年的定義是什么07-24
公積金的定義是什么08-03
有關(guān)php parse-str() 函數(shù)的定義和用法11-15
客戶關(guān)系管理的定義是什么09-30