最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C++指向函數(shù)的指針用法詳解

 更新時間:2014年09月02日 16:35:30   投稿:shichen2014  
這篇文章主要介紹了C++指向函數(shù)的指針用法,對函數(shù)指針的聲明、優(yōu)先級、指針類型等概念做了較為詳盡的分析,需要的朋友可以參考下

本文以實例形式展示了C++指向函數(shù)的指針用法,是深入學(xué)習C++所必須掌握的關(guān)鍵知識點。分享給大家供大家參考之用。具體方法如下:

函數(shù)指針

現(xiàn)來看看以下聲明語句,看看其含義:

float (*h(int, void (*)(int)))(int); 

以下是一個變量指針的定義語句:

float* pf; 

以下是一個普通函數(shù)的聲明語句:

float f(); 

請看以下聲明語句:

float* g(); 

因為()的優(yōu)先級高于*, 所以相當于:

float* (g()); 

g是一個函數(shù), 返回值為float*, 參數(shù)為void

float (*h)(); 

中, h是個指針, 指向一個返回值為float的函數(shù).
去掉h, 就是h的類型:

float (*)(); 

若要調(diào)用h所指的函數(shù), 解引用這個指針即可:

(*h)(); 

它的縮寫為(注意, 僅僅是縮寫):h();
注意不能將(*h)兩邊的括號去掉, 去掉后,*h()等價于*(h()). ANSI C會把它認為是以下語句的縮寫:

*((*h)()); 

上面的語句表示: 執(zhí)行h所指向的函數(shù), 然后解引用函數(shù)的返回值.
若h指向的函數(shù)有參數(shù), 參數(shù)是指向函數(shù)的指針呢? 假設(shè)該參數(shù)的類型為: void (*)(int), 則h可以聲明為:

float (*h)(void(*)(int)); 

已知有以下函數(shù)的聲明:

float func(int); 

若要使h指向函數(shù)func, 只需要將(*h)替換func即可:

float (*h)(int); 

更進一步, h所指的函數(shù)不返回float, 而是返回指向函數(shù)的指針呢? 該指針的類型為float(*)(int).

float (*h(parameter))(int); 

其中parameter為h所指函數(shù)的參數(shù), 假設(shè)參數(shù)類型有兩個, 一個為int型, 一個類型為: void (*)(int), 則最終的結(jié)果為:

float (*h(int, void (*)(int)))(int); 

希望本文所述對大家的C++程序設(shè)計有所幫助。

相關(guān)文章

  • C語言實現(xiàn)兩個變量值交換的三種方式

    C語言實現(xiàn)兩個變量值交換的三種方式

    兩個變量值的交換是編程中最常見的問題之一,以下將介紹三種變量的交換方式,其中第一種方式是最常用也是最實用的,后兩種方式一般只在特殊限制下使用,需要的朋友可以參考下
    2025-03-03
  • 淺談C語言的字符串分割

    淺談C語言的字符串分割

    下面小編就為大家?guī)硪黄獪\談C語言的字符串分割。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-05-05
  • Qt QThreadPool線程池的實現(xiàn)

    Qt QThreadPool線程池的實現(xiàn)

    QThreadPool管理和重新設(shè)計單個QThread對象,以幫助降低使用線程的程序中的線程創(chuàng)建成本,本文主要介紹了Qt QThreadPool線程池的實現(xiàn),具有一定的參考價值,感興趣的可以了解一下
    2007-03-03
  • C++?Qt開發(fā)之運用QJSON模塊解析數(shù)據(jù)

    C++?Qt開發(fā)之運用QJSON模塊解析數(shù)據(jù)

    JSON(JavaScript?Object?Notation)是一種輕量級的數(shù)據(jù)交換格式,它易于人閱讀和編寫,也易于機器解析和生成,本文主要介紹了Qt如何運用QJson組件的實現(xiàn)對JSON文本的靈活解析功能,需要的可以參考下
    2024-01-01
  • C++ 使用VS Code運行程序時終端輸出中文亂碼的解決辦法

    C++ 使用VS Code運行程序時終端輸出中文亂碼的解決辦法

    這篇文章主要介紹了C++ 使用VS Code運行程序時終端輸出中文亂碼的解決辦法 ,本文給大家介紹的非常詳細,感興趣的朋友跟隨小編一起看看吧
    2024-07-07
  • 如何通過wrap malloc定位C/C++的內(nèi)存泄漏問題

    如何通過wrap malloc定位C/C++的內(nèi)存泄漏問題

    用C/C++開發(fā)的程序執(zhí)行效率很高,但卻經(jīng)常受到內(nèi)存泄漏的困擾。本文提供一種通過wrap malloc查找memory leak的思路。
    2021-05-05
  • C語言實現(xiàn)大數(shù)值金額大寫轉(zhuǎn)換的方法詳解

    C語言實現(xiàn)大數(shù)值金額大寫轉(zhuǎn)換的方法詳解

    這篇文章主要為大家詳細介紹了如何利用C語言實現(xiàn)大數(shù)值金額大寫轉(zhuǎn)換的功能,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起了解一下
    2023-03-03
  • 淺談c++ 預(yù)處理器

    淺談c++ 預(yù)處理器

    這篇文章主要介紹了c++ 預(yù)處理器的的相關(guān)資料,文中示例代碼非常詳細,供大家參考和學(xué)習,感興趣的朋友可以了解下
    2020-06-06
  • VScode配置C語言環(huán)境完整版(親測可用)

    VScode配置C語言環(huán)境完整版(親測可用)

    這篇文章主要介紹了VScode配置C語言環(huán)境完整版,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學(xué)習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-08-08
  • C++ vector使用的一些注意事項

    C++ vector使用的一些注意事項

    這篇文章主要給大家介紹了關(guān)于C++ vector使用的一些注意事項,文中通過示例代碼介紹的非常詳細,對大家學(xué)習或者使用C++具有一定的參考學(xué)習價值,需要的朋友們下面來一起學(xué)習學(xué)習吧
    2019-08-08

最新評論

巴塘县| 岗巴县| 隆昌县| 吉林省| 盐池县| 襄樊市| 岳西县| 醴陵市| 武城县| 齐齐哈尔市| 巴彦县| 汽车| 九寨沟县| 潜江市| 林甸县| 玉环县| 儋州市| 和林格尔县| 龙州县| 依安县| 福鼎市| 孟村| 周宁县| 洛扎县| 象山县| 昭苏县| 平顶山市| 沙河市| 五华县| 九江市| 漳浦县| 五大连池市| 岳普湖县| 南皮县| 吴江市| 武威市| 政和县| 开原市| 凤山县| 安多县| 肥西县|