欧美性猛交xxxx免费看_牛牛在线视频国产免费_天堂草原电视剧在线观看免费_国产粉嫩高清在线观看_国产欧美日本亚洲精品一5区

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

函數(shù)指針和指針函數(shù)是不是一個東西?

學(xué)益得智能硬件 ? 來源:學(xué)益得智能硬件 ? 2024-01-03 16:35 ? 次閱讀

函數(shù)指針和指針函數(shù)是不是一個東西?

這兩個我們之前都有講過,但是并沒有放在一起比較過。

函數(shù)指針的本質(zhì)是指針,就跟整型指針、字符指針一樣,函數(shù)指針指向的是一個函數(shù)。

每個函數(shù)在內(nèi)存中都會有一個地址,函數(shù)調(diào)用就是跳轉(zhuǎn)到這個地址開始執(zhí)行,而函數(shù)指針就是記錄這個地址的變量。

026f24e4-aa13-11ee-8b88-92fbcf53809c.png ?

定義起來稍微有點麻煩:

#include 


inttest(inta)
{
    return a;
}


int main()
{
    int (*p)(int) = test;
    
    return 0;
}
比如test函數(shù),想要記錄他的地址,可以這樣定義指針p:
int (*p)(int) = test;
p是個指針,指向函數(shù),函數(shù)有一個int類型的參數(shù),函數(shù)的返回值是int。

調(diào)用函數(shù)的時候,不僅可以通過函數(shù)名來調(diào)用,也可以通過函數(shù)指針p來調(diào)用:
test(1);


p(1);
函數(shù)指針有什么用?

他的用處很大,比如C語言里面的回調(diào)函數(shù),或者在結(jié)構(gòu)體里面存放函數(shù),都可以用函數(shù)指針來解決,不清楚的,可以翻翻以前的視頻

指針函數(shù)的本質(zhì)是函數(shù),就像整型函數(shù)返回的是整型一樣,指針函數(shù)返回的是指針。

于是我們可以隨手寫一個數(shù)組,返回數(shù)組的名字,因為數(shù)組名就是地址。
int *test()
{
    int array[5] = {0};
    
    return array;
}
這是一個典型的錯誤,切記不能返回局部變量的地址,因為函數(shù)調(diào)用完畢,內(nèi)存釋放,即使返回了這個地址,也不能使用。

可以返回堆空間地址,也可以返回全局變量地址,或者是靜態(tài)變量地址都可以,這種返回地址的函數(shù)就叫指針函數(shù)。

那把這兩個概念結(jié)合起來會怎么樣?

可以,就叫指針函數(shù)指針:
int *(*p)() = test;
意思就是定義一個指針,讓他指向剛才的指針函數(shù),這就是C語言中的復(fù)雜類型聲明,開發(fā)中確實很少會用到,但是筆試中出現(xiàn)的概率高達80%,所以,不要覺得它沒用,想要學(xué)好C語言,務(wù)必得學(xué)會分析。








審核編輯:劉清
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 函數(shù)指針
    +關(guān)注

    關(guān)注

    2

    文章

    56

    瀏覽量

    3835
  • 指針函數(shù)
    +關(guān)注

    關(guān)注

    0

    文章

    10

    瀏覽量

    2806

原文標題:兩分鐘來搞懂函數(shù)指針和指針函數(shù)

文章出處:【微信號:學(xué)益得智能硬件,微信公眾號:學(xué)益得智能硬件】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    函數(shù)指針的使用簡述

    函數(shù)指針在Linux內(nèi)核和C語言開發(fā)中用的非常多,而且在設(shè)計操作系統(tǒng)的時候也會用到,因此這里將詳細講解函數(shù)指針。既然函數(shù)
    的頭像 發(fā)表于 09-09 08:56 ?2027次閱讀
    <b class='flag-5'>函數(shù)</b><b class='flag-5'>指針</b>的使用簡述

    函數(shù)指針指針函數(shù)的概念

    不少朋友會混淆“函數(shù)指針”和“指針函數(shù)”這兩概念,本文詳細介紹下。
    發(fā)表于 03-09 10:49 ?1248次閱讀

    文詳解函數(shù)指針與回調(diào)函數(shù)

    函數(shù)指針是指向函數(shù)指針變量。它允許我們將函數(shù)作為參數(shù)傳遞給其他函數(shù)或?qū)?/div>
    發(fā)表于 08-22 10:36 ?552次閱讀

    指針作為函數(shù)參數(shù)

    指針作為函數(shù)參數(shù) 大多數(shù)C程序員開始使用指針時是用它們實現(xiàn)函數(shù)的參數(shù),所謂可變參數(shù)。為了理解可變參數(shù)是如何工作的,我們看看在C語言中如何執(zhí)行
    發(fā)表于 07-29 11:49 ?2725次閱讀

    函數(shù)指針指針函數(shù)定義

    函數(shù)指針指針函數(shù),C語言學(xué)習(xí)中最容易混淆的些概念,好好學(xué)習(xí)吧
    發(fā)表于 01-11 16:44 ?0次下載

    C語言指針函數(shù)函數(shù)指針詳細介紹

    C語言指針函數(shù)函數(shù)指針詳細介紹。。。。。。。
    發(fā)表于 03-04 15:27 ?5次下載

    c語言函數(shù)指針定義,指針函數(shù)函數(shù)指針的區(qū)別

     往往,我們提到指針函數(shù)函數(shù)指針的時候,就有很多人弄不懂。下面就由小編詳細為大家介紹C語言中函數(shù)
    發(fā)表于 11-16 15:18 ?3648次閱讀

    ARM的函數(shù)指針指針函數(shù)的區(qū)別和用法

    在學(xué)習(xí)arm過程中發(fā)現(xiàn)這“指針函數(shù)”與“函數(shù)指針”容易搞錯,所以今天,我自己想次把它搞清楚,找了
    的頭像 發(fā)表于 06-20 10:08 ?3561次閱讀

    理解函數(shù)指針、函數(shù)指針數(shù)組、函數(shù)指針數(shù)組的指針

    理解函數(shù)指針、函數(shù)指針數(shù)組、函數(shù)指針數(shù)組的指針
    的頭像 發(fā)表于 06-29 15:38 ?1.5w次閱讀
    理解<b class='flag-5'>函數(shù)</b><b class='flag-5'>指針</b>、<b class='flag-5'>函數(shù)</b><b class='flag-5'>指針</b>數(shù)組、<b class='flag-5'>函數(shù)</b><b class='flag-5'>指針</b>數(shù)組的<b class='flag-5'>指針</b>

    C語言-內(nèi)聯(lián)函數(shù)、遞歸函數(shù)、指針函數(shù)

    這篇文章介紹C語言的內(nèi)聯(lián)函數(shù)、遞歸函數(shù)函數(shù)指針、指針函數(shù)、局部地址、const關(guān)鍵字、exte
    的頭像 發(fā)表于 08-14 10:03 ?1735次閱讀

    指針進階第五站:函數(shù)指針!

    定義函數(shù)指針,指向的函數(shù)有兩int形參并且返回
    發(fā)表于 08-17 15:58 ?557次閱讀

    如何使用函數(shù)指針?

    在程序中定義函數(shù),則編譯時系統(tǒng)就會為這段代碼分配段存儲空間,這段存儲空間的首地址稱為函數(shù)的地址,且
    的頭像 發(fā)表于 03-30 15:09 ?924次閱讀

    函數(shù)指針的基本概念和語法

    函數(shù)指針種非常強大的編程工具,它可以讓我們以更加靈活的方式編寫程序。在本文中,我們將介紹 8 函數(shù)
    的頭像 發(fā)表于 12-12 09:33 ?514次閱讀

    函數(shù)指針與回調(diào)函數(shù)的應(yīng)用實例

    通常我們說的指針變量是指向整型、字符型或數(shù)組等變量,而函數(shù)指針是指向函數(shù)。
    的頭像 發(fā)表于 03-07 11:13 ?440次閱讀
    <b class='flag-5'>函數(shù)</b><b class='flag-5'>指針</b>與回調(diào)<b class='flag-5'>函數(shù)</b>的應(yīng)用實例

    面試???1:函數(shù)指針指針函數(shù)、數(shù)組指針指針數(shù)組

    在嵌入式開發(fā)領(lǐng)域,函數(shù)指針、指針函數(shù)、數(shù)組指針指針數(shù)組是
    的頭像 發(fā)表于 08-10 08:11 ?996次閱讀
    面試???1:<b class='flag-5'>函數(shù)</b><b class='flag-5'>指針</b>與<b class='flag-5'>指針</b><b class='flag-5'>函數(shù)</b>、數(shù)組<b class='flag-5'>指針</b>與<b class='flag-5'>指針</b>數(shù)組