溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C語言函數(shù)指針怎么用

發(fā)布時間:2022-01-06 14:35:59 來源:億速云 閱讀:125 作者:iii 欄目:開發(fā)技術

這篇文章主要介紹“C語言函數(shù)指針怎么用”,在日常操作中,相信很多人在C語言函數(shù)指針怎么用問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”C語言函數(shù)指針怎么用”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

定義方法

對于一個函數(shù)如下:

<返回值類型> func (<參數(shù)1類型> <參數(shù)1>,...)
 其函數(shù)指針的格式為
<返回值類型> (*<指針名>) (<參數(shù)1類型> <參數(shù)1>,...)
 如下是實例:

定義如下一個函數(shù)指針

int main(int argc ,char* argv[]){
    double (*a)(int n1,int n1) = NULL;
}
這里a的含義是指向參數(shù)為整型n1,整型n2,返回值為double的函數(shù)的指針,實操中可以省略參數(shù)名,只留下參數(shù)類型,如下:
double (*a)(int ,int ) = NULL;
 而如下是指向返回值為指針類型的函數(shù):
double* (*a)(double* ,int ) = foo;

賦值方法

函數(shù)名其實就是函數(shù)的地址,我們只需要將這個地址賦值給函數(shù)指針即可,如下

#include<stdio.h>

double* foo(double *a ,int b){
    return a;
}

int main(int argc ,char* argv[]){
    double* (*a)(double* ,int ) = foo;
}
 通過調(diào)試,我們可以輕松看到foo和a的值:

C語言函數(shù)指針怎么用

用途

函數(shù)指針a可以作為另外一個函數(shù)b的變量,實現(xiàn)在函數(shù)b中運行函數(shù)a

函數(shù)指針可以作為結(jié)構(gòu)體的一個域,就像C++中的類函數(shù)一樣

到此,關于“C語言函數(shù)指針怎么用”的學習就結(jié)束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續(xù)學習更多相關知識,請繼續(xù)關注億速云網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

AI