欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C語(yǔ)言函數(shù)指針詳解

 更新時(shí)間:2022年01月06日 08:43:35   作者:LuckyDog-Code  
大家好,本篇文章主要講的是C語(yǔ)言函數(shù)指針詳解,感興趣的同學(xué)趕快來(lái)看一看吧,對(duì)你有幫助的話(huà)記得收藏一下,方便下次瀏覽

前言

? 都知道c語(yǔ)言有各種類(lèi)型的指針,但是大家很少接觸函數(shù)指針,其實(shí)較粗略的說(shuō),C++的類(lèi)中應(yīng)該相當(dāng)于C語(yǔ)言中含有函數(shù)指針的結(jié)構(gòu)體

定義方法

? 對(duì)于一個(gè)函數(shù)如下:

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

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

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

賦值方法

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

#include<stdio.h>

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

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

在這里插入圖片描述

用途

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

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

總結(jié)

到此這篇關(guān)于C語(yǔ)言函數(shù)指針詳解的文章就介紹到這了,更多相關(guān)C語(yǔ)言函數(shù)指針內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • c++ 讓程序開(kāi)機(jī)自動(dòng)啟動(dòng)的方法

    c++ 讓程序開(kāi)機(jī)自動(dòng)啟動(dòng)的方法

    這篇文章主要介紹了c++ 讓程序開(kāi)機(jī)自動(dòng)啟動(dòng)的方法,需要的朋友可以參考下
    2017-09-09
  • 詳解C語(yǔ)言之操作符

    詳解C語(yǔ)言之操作符

    這篇文章主要以圖文結(jié)合的方式為大家詳細(xì)介紹了C語(yǔ)言的操作符知識(shí),感興趣的小伙伴們可以參考一下,希望能給你帶來(lái)幫助
    2021-11-11
  • VC MFC非模態(tài)對(duì)話(huà)框的實(shí)現(xiàn)方法

    VC MFC非模態(tài)對(duì)話(huà)框的實(shí)現(xiàn)方法

    這篇文章主要介紹了VC MFC非模態(tài)對(duì)話(huà)框的實(shí)現(xiàn)方法,有助于讀者加深對(duì)于模態(tài)對(duì)話(huà)框與非模態(tài)對(duì)話(huà)框的理解與運(yùn)用,需要的朋友可以參考下
    2014-07-07
  • java 中ArrayList與LinkedList性能比較

    java 中ArrayList與LinkedList性能比較

    這篇文章主要介紹了java 中ArrayList與LinkedList性能比較的相關(guān)資料,需要的朋友可以參考下
    2017-03-03
  • C++ 實(shí)現(xiàn)旋轉(zhuǎn)蛇錯(cuò)覺(jué)的詳細(xì)代碼

    C++ 實(shí)現(xiàn)旋轉(zhuǎn)蛇錯(cuò)覺(jué)的詳細(xì)代碼

    這篇文章主要介紹了C++ 實(shí)現(xiàn)旋轉(zhuǎn)蛇錯(cuò)覺(jué)的詳細(xì)代碼,代碼簡(jiǎn)單易懂,對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-09-09
  • Qt實(shí)現(xiàn)圖形裁減

    Qt實(shí)現(xiàn)圖形裁減

    這篇文章主要為大家詳細(xì)介紹了Qt實(shí)現(xiàn)圖形裁減,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-06-06
  • 深入理解C++的動(dòng)態(tài)綁定與靜態(tài)綁定的應(yīng)用詳解

    深入理解C++的動(dòng)態(tài)綁定與靜態(tài)綁定的應(yīng)用詳解

    本篇文章是對(duì)C++中的動(dòng)態(tài)綁定與靜態(tài)綁定進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-05-05
  • c++ 如何實(shí)現(xiàn)線(xiàn)程注入

    c++ 如何實(shí)現(xiàn)線(xiàn)程注入

    本文主要介紹了各種API遠(yuǎn)程線(xiàn)程注入的方法,分別是 遠(yuǎn)程線(xiàn)程注入,普通消息鉤子注入,全局消息鉤子注入,APC應(yīng)用層異步注入,ZwCreateThreadEx強(qiáng)力注入,純匯編實(shí)現(xiàn)的線(xiàn)程注入等
    2021-06-06
  • C/C++回調(diào)函數(shù)介紹

    C/C++回調(diào)函數(shù)介紹

    回調(diào)函數(shù)就是一個(gè)通過(guò)函數(shù)指針調(diào)用的函數(shù)。如果你把函數(shù)的指針(地址)作為參數(shù)傳遞給另一個(gè)函數(shù),當(dāng)這個(gè)指針被用為調(diào)用它所指向的函數(shù)時(shí),我們就說(shuō)這是回調(diào)函數(shù)
    2013-10-10
  • C++中vector的常用接口詳析說(shuō)明

    C++中vector的常用接口詳析說(shuō)明

    vector類(lèi)我們可以將其看作是一個(gè)能夠動(dòng)態(tài)擴(kuò)容的數(shù)組,下面這篇文章主要給大家介紹了關(guān)于?C++?vector常用接口的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-08-08

最新評(píng)論