0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創(chuàng)作中心

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

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

什么是函數(shù)的返回值?

CHANBAEK ? 來源:小木編程 ? 作者:小木之 ? 2023-04-04 17:21 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

什么是函數(shù)的返回值?

  • 函數(shù)的返回值是函數(shù)被調(diào)用后,執(zhí)行所調(diào)用函數(shù)內(nèi)代碼后所得出的結(jié)果,并且將返回給主函數(shù)的值。

我們舉個(gè)簡(jiǎn)單的例子:

  • 有一天,你想要知道自己銀行卡內(nèi)還有多少錢,于是你前往ATM機(jī)進(jìn)行查詢,經(jīng)過查詢,ATM機(jī)告訴你你的卡里只剩 50 元錢。

在這個(gè)例子中:

  • 你想要知道銀行卡內(nèi)有多少錢 ≈ 主函數(shù)中程序的內(nèi)容
  • 使用ATM機(jī)查詢這個(gè)行為 ≈ 函數(shù)
  • ATM機(jī)顯示你的余額 ≈ 返回值

返回值怎樣表達(dá)?

  • 函數(shù)的返回值通過 return 語(yǔ)句返回主函數(shù)
return 表達(dá)式;

返回值的類型

  • 返回值的類型要與定義函數(shù)時(shí)函數(shù)的類型一致

舉例:

int Add(int a,int b)
{
  return a+b;    // 返回值表示兩個(gè)整數(shù)的和,也是 int 類型 
}

我們這個(gè)函數(shù)定義的類型是 int 型,那么返回值的類型就也要是 int 型。

函數(shù)沒有返回值的情況

一個(gè)函數(shù)可以沒有返回值。

  • 如果函數(shù)沒有返回值,函數(shù)類型定義為 void 表示 空

舉例:

我們對(duì)上面的函數(shù)稍作修改

void Add(int a,int b)
{
  printf("%d",a+b);    // 輸出 a+b 
}

同樣是計(jì)算兩數(shù)之和,修改后的函數(shù)不再將結(jié)果返回給主函數(shù),由主函數(shù)輸出,而是直接在函數(shù)內(nèi)輸出。

此時(shí)函數(shù)定義時(shí),就要為 void 類型。

  • 一般來說,void 類型的函數(shù)中是沒有 return 語(yǔ)句的。
  • 但在某些情況需要使用 return 語(yǔ)句起到結(jié)束函數(shù)的作用。
  • 比如 “遞歸”。
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 函數(shù)
    +關(guān)注

    關(guān)注

    3

    文章

    4375

    瀏覽量

    64459
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4891

    瀏覽量

    70397
  • void
    +關(guān)注

    關(guān)注

    0

    文章

    23

    瀏覽量

    10058
  • Return
    +關(guān)注

    關(guān)注

    0

    文章

    9

    瀏覽量

    7809
收藏 0人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    C語(yǔ)言函數(shù)返回值

    當(dāng)然,C語(yǔ)言程序員中還有一種“行業(yè)潛規(guī)則”。如果定義的函數(shù)是個(gè)布爾函數(shù),也即返回值顯式的使用類似于 bool 關(guān)鍵字定義,或者函數(shù)名類似于 is_true(),那么顯然此時(shí)應(yīng)該遵守C語(yǔ)
    發(fā)表于 08-31 10:11 ?1937次閱讀

    C語(yǔ)言中函數(shù)返回值指向一個(gè)指針

    函數(shù)返回值類型必須與函數(shù)體內(nèi)的返回表達(dá)式的類型相匹配。如果類型不匹配,編譯器會(huì)報(bào)錯(cuò)。此外,C 語(yǔ)言中的函數(shù)只能
    的頭像 發(fā)表于 04-26 11:01 ?3634次閱讀
    C語(yǔ)言中<b class='flag-5'>函數(shù)</b>的<b class='flag-5'>返回值</b>指向一個(gè)指針

    C語(yǔ)言如何獲取宏定義中函數(shù)返回值

    簡(jiǎn)單的宏定義我們都會(huì)用,比如獲取較小
    發(fā)表于 08-25 16:19 ?3264次閱讀
    C語(yǔ)言如何獲取宏定義中<b class='flag-5'>函數(shù)</b>的<b class='flag-5'>返回值</b>

    關(guān)于c語(yǔ)言函數(shù)返回值的討論

    本文轉(zhuǎn)自他們博客,介紹了c語(yǔ)言函數(shù)返回值的一些知識(shí),是我在學(xué)習(xí)過程中積累的,希望能幫到大家!{:soso__16249759529752583092_2:}
    發(fā)表于 08-31 09:17

    main函數(shù)返回值的認(rèn)知

    return返回的數(shù)值由程序的作者自定。返回不同的可以代表不同的含義,一般是代表出錯(cuò)的原因,傳統(tǒng)上返回0代表程序正常結(jié)束。main 函數(shù)
    發(fā)表于 10-24 11:08

    請(qǐng)問為什么不論我用哪個(gè)核調(diào)用MultiProc_self()這個(gè)函數(shù),返回值都是0???應(yīng)該如何解決?

    本帖最后由 一只耳朵怪 于 2018-6-25 15:11 編輯 為什么不論我用哪個(gè)核調(diào)用MultiProc_self()這個(gè)函數(shù),返回值都是0啊。而且當(dāng)我試圖使用DNUM的時(shí)候,DNUM的竟然是256.。請(qǐng)問一下這是什
    發(fā)表于 06-25 01:56

    請(qǐng)問ll_McuPrecisionCount( )這個(gè)函數(shù)返回值是625us個(gè)數(shù)嗎?

    兩個(gè)問題1,uint16 ll_McuPrecisionCount(void); 這個(gè)函數(shù)返回值是625us個(gè)數(shù)是吧?我在網(wǎng)上搜的資料有的說是325us,關(guān)于這個(gè)函數(shù)的講解有沒有官方手冊(cè)?2,這個(gè)
    發(fā)表于 10-30 09:46

    temp不能得到函數(shù)返回值

    main(){u16 temp;.....temp= function(x,y);temp=temp&0xff;......}在此程序中,temp無法得到函數(shù)返回值,但是,如果將程序改成
    發(fā)表于 03-09 01:27

    請(qǐng)問這兩個(gè)函數(shù)返回值有什么區(qū)別?

    如題: 請(qǐng)問:下面這兩個(gè)函數(shù)返回值有什么區(qū)別?如果分別連續(xù)調(diào)用10次該函數(shù)返回值分別是多少呢?最好能簡(jiǎn)單分析一下,謝謝! int GetValue(void) { int f
    發(fā)表于 05-12 03:03

    單片機(jī)定義子函數(shù)返回值有問題嗎

    單片機(jī)定義子函數(shù)返回值有問題嗎?如果有,該如何去解決呢?
    發(fā)表于 10-14 09:31

    淺談C語(yǔ)言return語(yǔ)句和main 函數(shù)返回值

    函數(shù)中,如果碰到return 語(yǔ)句,那么程序就會(huì)返回調(diào)用該函數(shù)的下一條語(yǔ)句執(zhí)行,也就是說跳出函數(shù)的執(zhí)行,回到原來的地方繼續(xù)執(zhí)行下去。但是如果是在主
    發(fā)表于 05-10 10:53 ?5569次閱讀

    C語(yǔ)言程序開發(fā)中關(guān)于函數(shù)返回值的問題

    C語(yǔ)言函數(shù)可以通過返回值表示輸出結(jié)果,例如 log() 函數(shù)返回值會(huì)根據(jù)不同的輸入,返回不同的
    發(fā)表于 09-06 10:01 ?1116次閱讀

    C語(yǔ)言函數(shù)返回值,竟也有潛規(guī)則

      基本上,沒有人會(huì)將大段的C語(yǔ)言代碼全部塞入 main() 函數(shù)。更好的做法是按照復(fù)用率高、耦合性低的原則,盡可能的將代碼拆分不同的功能模塊,并封裝成函數(shù)。
    發(fā)表于 11-25 09:32 ?487次閱讀

    return-函數(shù)返回值是什么

    return關(guān)鍵字后接變量名或表達(dá)式可以將函數(shù)的計(jì)算結(jié)果返回到調(diào)用處。變量或表達(dá)式等同于接收果汁、豆?jié){的杯子。如果函數(shù)沒有返回值,return可以省略不寫。沒有
    的頭像 發(fā)表于 02-23 10:52 ?1658次閱讀
    return-<b class='flag-5'>函數(shù)</b>的<b class='flag-5'>返回值</b>是什么

    C語(yǔ)言如何處理函數(shù)返回值

    當(dāng)你在函數(shù)的最后寫上 return 0 的時(shí)候,它是如何返回給調(diào)用函數(shù)的? 比如 test 函數(shù),為了待會(huì)更好的看懂匯編代碼,我寫成了 return 1234。 處理
    的頭像 發(fā)表于 01-16 09:21 ?401次閱讀

    電子發(fā)燒友

    中國(guó)電子工程師最喜歡的網(wǎng)站

    • 2931785位工程師會(huì)員交流學(xué)習(xí)
    • 獲取您個(gè)性化的科技前沿技術(shù)信息
    • 參加活動(dòng)獲取豐厚的禮品