在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

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

詳解回調(diào)函數(shù)的概念及使用步驟

嵌入式應(yīng)用開(kāi)發(fā) ? 來(lái)源:嵌入式應(yīng)用開(kāi)發(fā) ? 作者:嵌入式應(yīng)用開(kāi)發(fā) ? 2022-05-26 15:20 ? 次閱讀

回調(diào)函數(shù)的概念:

回調(diào)函數(shù)就是一個(gè)被作為參數(shù)傳遞的函數(shù)。在C語(yǔ)言中,回調(diào)函數(shù)只能使用函數(shù)指針實(shí)現(xiàn),在C++Python、ECMAScript等更現(xiàn)代的編程語(yǔ)言中還可以使用仿函數(shù)或匿名函數(shù)。

回調(diào)函數(shù)的使用可以大大提升編程的效率,這使得它在現(xiàn)代編程中被非常多地使用。同時(shí),有一些需求必須要使用回調(diào)函數(shù)來(lái)實(shí)現(xiàn)。

最著名的回調(diào)函數(shù)調(diào)用有C/C++標(biāo)準(zhǔn)庫(kù)stdlib.h/cstdlib中的快速排序函數(shù)qsort和二分查找函數(shù)bsearch中都會(huì)要求的一個(gè)與strcmp類似的參數(shù),用于設(shè)置數(shù)據(jù)的比較方法。

回調(diào)函數(shù)的使用步驟:

⑴定義一個(gè)回調(diào)函數(shù);

⑵提供函數(shù)實(shí)現(xiàn)的一方在初始化的時(shí)候,將回調(diào)函數(shù)的函數(shù)指針注冊(cè)給調(diào)用者;

⑶當(dāng)特定的事件或條件發(fā)生的時(shí)候,調(diào)用者使用函數(shù)指針調(diào)用回調(diào)函數(shù)對(duì)事件進(jìn)行處理。

回調(diào)函數(shù)中沒(méi)有參數(shù)的使用方法,如下代碼:

#include

int Callback_1() // Callback Function 1
{
    printf("Hello, this is Callback_1 ");
    return 0;
}

int Callback_2() // Callback Function 2
{
    printf("Hello, this is Callback_2 ");
    return 0;
}

int Callback_3() // Callback Function 3
{
    printf("Hello, this is Callback_3 ");
    return 0;
}

int Handle(int (*Callback)())  //定義回調(diào)函數(shù)體
{
    printf("Entering Handle Function. ");
    Callback();
    printf("Leaving Handle Function. ");
}

int main()
{
    printf("Entering Main Function. ");
    Handle(Callback_1);
    Handle(Callback_2);
    Handle(Callback_3);
    printf("Leaving Main Function. ");
    return 0;
}

d當(dāng)我們回調(diào)的函數(shù)帶參數(shù)時(shí),需要做如下的調(diào)整:

#include

int Callback_1(int x) // Callback Function 1
{
    printf("Hello, this is Callback_1: x = %d ", x);
    return 0;
}

int Callback_2(int x) // Callback Function 2
{
    printf("Hello, this is Callback_2: x = %d ", x);
    return 0;
}

int Callback_3(int x) // Callback Function 3
{
    printf("Hello, this is Callback_3: x = %d ", x);
    return 0;
}

int Handle(int y, int (*Callback)(int))   //注意差異
{
    printf("Entering Handle Function. ");
    Callback(y);
    printf("Leaving Handle Function. ");
}

int main()
{
    int a = 2;
    int b = 4;
    int c = 6;
    printf("Entering Main Function. ");
    Handle(a, Callback_1);
    Handle(b, Callback_2);
    Handle(c, Callback_3);
    printf("Leaving Main Function. ");
    return 0;
}
審核編輯:湯梓紅
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • C語(yǔ)言
    +關(guān)注

    關(guān)注

    180

    文章

    7615

    瀏覽量

    137827
  • 編程語(yǔ)言
    +關(guān)注

    關(guān)注

    10

    文章

    1951

    瀏覽量

    35018
  • 回調(diào)函數(shù)
    +關(guān)注

    關(guān)注

    0

    文章

    87

    瀏覽量

    11626
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    一文詳解C語(yǔ)言函數(shù)指針與調(diào)函數(shù)

    在講調(diào)函數(shù)之前,我們需要了解函數(shù)指針。
    發(fā)表于 10-19 09:34 ?821次閱讀

    C語(yǔ)言里面的函數(shù)指針和調(diào)函數(shù)

    在講調(diào)函數(shù)之前,我們需要了解函數(shù)指針。
    發(fā)表于 12-13 10:28 ?670次閱讀

    C 語(yǔ)言調(diào)函數(shù)詳解

    C 語(yǔ)言調(diào)函數(shù)詳解什么是調(diào)函數(shù)
    發(fā)表于 04-08 10:36

    C語(yǔ)言調(diào)函數(shù)學(xué)習(xí)

    對(duì)指針的應(yīng)用是C語(yǔ)言編程的精髓所在,而回調(diào)函數(shù)就是C語(yǔ)言里面對(duì)函數(shù)指針的高級(jí)應(yīng)用。簡(jiǎn)而言之,調(diào)函數(shù)
    發(fā)表于 05-27 09:44 ?7229次閱讀

    LabWindows/CVI 程序 調(diào)函數(shù)設(shè)計(jì)

    調(diào)函數(shù)是系統(tǒng)框架設(shè)計(jì)中非常重要的一種手段,所謂調(diào)函數(shù)(callback )是指一個(gè)通過(guò)
    發(fā)表于 05-03 16:54 ?1.1w次閱讀
    LabWindows/CVI 程序 <b class='flag-5'>回</b><b class='flag-5'>調(diào)</b><b class='flag-5'>函數(shù)</b>設(shè)計(jì)

    調(diào)函數(shù)的詳細(xì)資料說(shuō)明

    異步事件的處理,首先將異步事件發(fā)生時(shí)需要執(zhí)行的代碼編寫成一個(gè)函數(shù),并將該函數(shù)注冊(cè)成為調(diào)函數(shù),這樣當(dāng)該異步事件發(fā)生時(shí),系統(tǒng)會(huì)自動(dòng)調(diào)用事先注冊(cè)
    發(fā)表于 02-28 08:00 ?6次下載
    <b class='flag-5'>回</b><b class='flag-5'>調(diào)</b><b class='flag-5'>函數(shù)</b>的詳細(xì)資料說(shuō)明

    C語(yǔ)言函數(shù)調(diào)函數(shù)

    來(lái)源:嵌入式客棧 1 什么是調(diào)函數(shù)?首先什么是調(diào)呢? 我的理解是:把一段可執(zhí)行的代碼像參數(shù)傳遞那樣傳給其他代碼,而這段代碼會(huì)在某個(gè)時(shí)刻被
    的頭像 發(fā)表于 09-11 09:57 ?4192次閱讀

    c語(yǔ)言調(diào)函數(shù)的使用及實(shí)際作用詳解

    大家好,我是無(wú)際。今天給大家講一下芯片/模塊廠家寫SDK必須會(huì)使用的一種技術(shù):調(diào)函數(shù)調(diào)函數(shù)
    發(fā)表于 11-20 19:51 ?13次下載
    c語(yǔ)言<b class='flag-5'>回</b><b class='flag-5'>調(diào)</b><b class='flag-5'>函數(shù)</b>的使用及實(shí)際作用<b class='flag-5'>詳解</b>

    智能電網(wǎng)的概念及通信技術(shù)詳解

    智能電網(wǎng)的概念及通信技術(shù)詳解
    發(fā)表于 11-21 20:41 ?1291次閱讀

    一文詳解C/C++調(diào)函數(shù)

    首先看一下調(diào)函數(shù)的官方解釋:調(diào)函數(shù)就是一個(gè)通過(guò)函數(shù)
    的頭像 發(fā)表于 02-12 09:20 ?1667次閱讀

    函數(shù)指針和調(diào)函數(shù)的使用方法

    了解開(kāi)發(fā)語(yǔ)言的朋友應(yīng)該都會(huì)對(duì)調(diào)函數(shù)有所了解,在很多的程序開(kāi)發(fā)語(yǔ)言中都能看到調(diào)的身影。很多場(chǎng)景下,當(dāng)某個(gè)條件成立以后我們希望代碼執(zhí)行某些指
    的頭像 發(fā)表于 04-10 15:08 ?1194次閱讀

    C語(yǔ)言技巧之調(diào)函數(shù)

    在講調(diào)函數(shù)之前,我們需要了解函數(shù)指針。
    的頭像 發(fā)表于 04-18 11:50 ?848次閱讀

    C語(yǔ)言|調(diào)函數(shù)的不同用法

    調(diào)函數(shù)是個(gè)高級(jí)操作技巧,也是日常項(xiàng)目中常常使用到的技能。之所以說(shuō)調(diào)函數(shù)是個(gè)高級(jí)操作技巧,是因
    發(fā)表于 07-10 10:34 ?1349次閱讀

    應(yīng)用筆記 | 淺談STM32庫(kù)里的調(diào)函數(shù)

    關(guān)鍵字:調(diào)函數(shù),HAL庫(kù) ? 目錄預(yù)覽 1.調(diào)函數(shù) 2.STM32固件庫(kù)里的
    的頭像 發(fā)表于 09-14 17:10 ?3924次閱讀
    應(yīng)用筆記 | 淺談STM32庫(kù)里的<b class='flag-5'>回</b><b class='flag-5'>調(diào)</b><b class='flag-5'>函數(shù)</b>

    調(diào)函數(shù)(callback)是什么?調(diào)函數(shù)的實(shí)現(xiàn)方法

    調(diào)函數(shù)是一種特殊的函數(shù),它作為參數(shù)傳遞給另一個(gè)函數(shù),并在被調(diào)用函數(shù)執(zhí)行完畢后被調(diào)用。
    發(fā)表于 03-12 11:46 ?3179次閱讀
    主站蜘蛛池模板: 免费恐怖片 | 全黄h全肉边做边吃奶在线观看 | 国产三级播放 | 一级特黄aaa大片 | 亚洲免费网站在线观看 | 蜜月mv国产精品 | 亚洲国产精品婷婷久久 | 性视频在线 | 久久香蕉精品视频 | 国产成人综合欧美精品久久 | 欧美刺激午夜性久久久久久久 | 一级黄色录像毛片 | 久久久久99精品成人片三人毛片 | 久久综合九色综合欧美播 | 2019偷偷狠狠的日日 | 亚洲韩国在线一卡二卡 | 女色专区 | 免费看va | 国产高清一区二区三区 | 午夜精品久久久久久久久 | 久久精品韩国三级 | 亚洲啪啪网站 | 亚洲国产精品va在线观看麻豆 | 日本操穴| 亚洲日本精品 | 日韩免费视频一区 | 一区二区三区四区视频在线 | 午夜视频在线观看免费高清 | 日韩va亚洲va欧美va浪潮 | 91精品国产色综合久久不卡蜜 | 国产在播放一区 | 加勒比日本在线 | 97影院午夜在线观看视频 | 四虎永久免费影院在线 | 欧美色图日韩色图 | 国产免费一区二区三区最新 | 亚洲一区免费看 | gogo亚洲肉体艺术100 | 日本一区二区不卡视频 | 免费毛片网站 | 在线免费日韩 |