国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C > 正文

C語言 函數指針(指向函數的指針)詳解

2020-01-26 14:27:40
字體:
來源:轉載
供稿:網友

一個函數總是占用一段連續的內存區域,函數名在表達式中有時也會被轉換為該函數所在內存區域的首地址,這和數組名非常類似。我們可以把函數的這個首地址(或稱入口地址)賦予一個指針變量,使指針變量指向函數所在的內存區域,然后通過指針變量就可以找到并調用該函數。這種指針就是函數指針。

函數指針的定義形式為:

returnType (*pointerName)(param list);

returnType 為函數返回值類型,pointerNmae 為指針名稱,param list 為函數參數列表。參數列表中可以同時給出參數的類型和名稱,也可以只給出參數的類型,省略參數的名稱,這一點和函數原型非常類似。

注意( )的優先級高于*,第一個括號不能省略,如果寫作returnType *pointerName(param list);就成了函數原型,它表明函數的返回值類型為returnType *。

【實例】用指針來實現對函數的調用。

#include <stdio.h>//返回兩個數中較大的一個int max(int a, int b){ return a>b ? a : b;}int main(){ int x, y, maxval; //定義函數指針 int (*pmax)(int, int) = max; //也可以寫作int (*pmax)(int a, int b) printf("Input two numbers:"); scanf("%d %d", &x, &y); maxval = (*pmax)(x, y); printf("Max value: %d/n", maxval); return 0;}

運行結果:

Input two numbers:10 50

主站蜘蛛池模板: 当涂县| 武安市| 宜良县| 海南省| 盐城市| 泰安市| 明溪县| 凤凰县| 剑河县| 栾城县| 拜泉县| 洞头县| 定兴县| 湘西| 涪陵区| 鄢陵县| 新泰市| 绥中县| 阳曲县| 青冈县| 柳河县| 宁德市| 蛟河市| 苗栗市| 泰安市| 景东| 佛学| 铜梁县| 上思县| 潢川县| 营山县| 牡丹江市| 阳谷县| 老河口市| 瑞安市| 家居| 容城县| 武威市| 安阳市| 西峡县| 石狮市|