0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

什么是函数的返回值?

CHANBAEK 来源:小木编程 作者:小木之 2023-04-04 17:21 次阅读

什么是函数的返回值?

  • 函数的返回值是函数被调用后,执行所调用函数内代码后所得出的结果,并且将返回给主函数的值。

我们举个简单的例子:

  • 有一天,你想要知道自己银行卡内还有多少钱,于是你前往ATM机进行查询,经过查询,ATM机告诉你你的卡里只剩 50 元钱。

在这个例子中:

  • 你想要知道银行卡内有多少钱 ≈ 主函数中程序的内容
  • 使用ATM机查询这个行为 ≈ 函数
  • ATM机显示你的余额 ≈ 返回值

返回值怎样表达?

  • 函数的返回值通过 return 语句返回主函数
return 表达式;

返回值的类型

  • 返回值的类型要与定义函数时函数的类型一致

举例:

int Add(int a,int b)
{
  return a+b;    // 返回值表示两个整数的和,也是 int 类型 
}

我们这个函数定义的类型是 int 型,那么返回值的类型就也要是 int 型。

函数没有返回值的情况

一个函数可以没有返回值。

  • 如果函数没有返回值,函数类型定义为 void 表示 空

举例:

我们对上面的函数稍作修改

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

同样是计算两数之和,修改后的函数不再将结果返回给主函数,由主函数输出,而是直接在函数内输出。

此时函数定义时,就要为 void 类型。

  • 一般来说,void 类型的函数中是没有 return 语句的。
  • 但在某些情况需要使用 return 语句起到结束函数的作用。
  • 比如 “递归”。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 函数
    +关注

    关注

    3

    文章

    4304

    浏览量

    62426
  • 代码
    +关注

    关注

    30

    文章

    4744

    浏览量

    68343
  • void
    +关注

    关注

    0

    文章

    23

    浏览量

    9856
  • Return
    +关注

    关注

    0

    文章

    9

    浏览量

    7599
收藏 人收藏

    评论

    相关推荐

    C语言函数返回值

    当然,C语言程序员中还有一种“行业潜规则”。如果定义的函数是个布尔函数,也即返回值显式的使用类似于 bool 关键字定义,或者函数名类似于 is_true(),那么显然此时应该遵守C语
    发表于 08-31 10:11 1642次阅读

    C语言中函数返回值指向一个指针

    函数返回值类型必须与函数体内的返回表达式的类型相匹配。如果类型不匹配,编译器会报错。此外,C 语言中的函数只能
    的头像 发表于 04-26 11:01 3051次阅读
    C语言中<b class='flag-5'>函数</b>的<b class='flag-5'>返回值</b>指向一个指针

    C语言如何获取宏定义中函数返回值

    简单的宏定义我们都会用,比如获取较小
    发表于 08-25 16:19 2558次阅读
    C语言如何获取宏定义中<b class='flag-5'>函数</b>的<b class='flag-5'>返回值</b>

    关于c语言函数返回值的讨论

    本文转自他们博客,介绍了c语言函数返回值的一些知识,是我在学习过程中积累的,希望能帮到大家!{:soso__16249759529752583092_2:}
    发表于 08-31 09:17

    main函数返回值的认知

    return返回的数值由程序的作者自定。返回不同的可以代表不同的含义,一般是代表出错的原因,传统上返回0代表程序正常结束。main 函数
    发表于 10-24 11:08

    请问为什么不论我用哪个核调用MultiProc_self()这个函数返回值都是0啊?应该如何解决?

    本帖最后由 一只耳朵怪 于 2018-6-25 15:11 编辑 为什么不论我用哪个核调用MultiProc_self()这个函数返回值都是0啊。而且当我试图使用DNUM的时候,DNUM的竟然是256.。请问一下这是什
    发表于 06-25 01:56

    关系函数返回值的问题,返回是vxx_pdcch_true_or_false=1,但是使用if(vxx_pdcch_true_or_false ==0)语句判断竟然是成立的

    关系函数返回值的问题,返回是vxx_pdcch_true_or_false=1,但是使用if(vxx_pdcch_true_or_false ==0)语句判断竟然是成立的 没有开优化 如图:
    发表于 08-03 07:43

    请问ll_McuPrecisionCount( )这个函数返回值是625us个数吗?

    两个问题1,uint16 ll_McuPrecisionCount(void); 这个函数返回值是625us个数是吧?我在网上搜的资料有的说是325us,关于这个函数的讲解有没有官方手册?2,这个
    发表于 10-30 09:46

    temp不能得到函数返回值

    main(){u16 temp;.....temp= function(x,y);temp=temp&0xff;......}在此程序中,temp无法得到函数返回值,但是,如果将程序改成
    发表于 03-09 01:27

    请问这两个函数返回值有什么区别?

    如题: 请问:下面这两个函数返回值有什么区别?如果分别连续调用10次该函数返回值分别是多少呢?最好能简单分析一下,谢谢! int GetValue(void) { int f
    发表于 05-12 03:03

    单片机定义子函数返回值有问题吗

    单片机定义子函数返回值有问题吗?如果有,该如何去解决呢?
    发表于 10-14 09:31

    浅谈C语言return语句和main 函数返回值

    函数中,如果碰到return 语句,那么程序就会返回调用该函数的下一条语句执行,也就是说跳出函数的执行,回到原来的地方继续执行下去。但是如果是在主
    发表于 05-10 10:53 5254次阅读

    C语言程序开发中关于函数返回值的问题

    C语言函数可以通过返回值表示输出结果,例如 log() 函数返回值会根据不同的输入,返回不同的
    发表于 09-06 10:01 929次阅读

    C语言函数返回值,竟也有潜规则

      基本上,没有人会将大段的C语言代码全部塞入 main() 函数。更好的做法是按照复用率高、耦合性低的原则,尽可能的将代码拆分不同的功能模块,并封装成函数
    发表于 11-25 09:32 339次阅读

    return-函数返回值是什么

    return关键字后接变量名或表达式可以将函数的计算结果返回到调用处。变量或表达式等同于接收果汁、豆浆的杯子。如果函数没有返回值,return可以省略不写。没有
    的头像 发表于 02-23 10:52 1153次阅读
    return-<b class='flag-5'>函数</b>的<b class='flag-5'>返回值</b>是什么