函数中有多个return?C语言中,一个函数可以有几个返回值?

原创 2012年03月29日 09:53:03

      在移植wifi的代码时,遇到了一些与下面类似的函数,这些函数中有不只一个return,这可是个新鲜的玩意儿:

int func (int b)
{
   int a=5;
   if (a>b)
      return a;
   else
      return b;

   return  0;
}

     原来C/C++ 中,reutrn语句是这样定义的:

     通过在函数中使用返回语句,返回一个值给函数,同时终止函数的调用,返回主函数。(注意:同时终止函数的调用,也就是说函数在运行到return时就会终止了。)

     格式:    return (表达式); 或return 表达式;

      功能:    

       (1)计算表达式的值,将表达式的值返回给函数。 

       (2)从被调用的函数返回主调函数。 
       说明: 
       (1)返回值类型应和函数类型一致,不一致将返回值自动转换成函数类型。 
       (2)函数中可以有多条返回语句,这时一般与if语句联用,执行到哪一条返回语句,哪条返回语句起作用。 
       (3)函数中无return语句,执行至函数体结尾时返回,此时将返回一个不确定的值给函数。
       (4)如果只需要从函数中返回,而不需带回值,使用不带表达式的return语句。

       此外,有时调用一个函数,需要返回多个参数,这种情况应当如何处理呢?

       可以有两种办法:一是申请一个全局变量,在函数调用时对其进行处理,返回主程序时仍然可用;另一种办法是,返回一个指针,指针指向一个结构体,或者一个数组,这样就能返回多个参数了。而指向结构体的指针,在很多情况下是很常见的。

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

如何编写有多个返回值的C语言函数

1引言      笔者从事C语言教学多年,在教学中学生们常常会问到如何编写具有多个返回值的C语言函数。编写有多个返回值的函数是所有C语言教材里均没有提到的知识点,但在实际教学与应用的过程中我们...

如何编写有多个返回值的C语言函数

原文链接 http://blog.csdn.net/supreme42/article/details/7636475 1引言    笔者从事C语言教学多年,在教学中学生们常常会问到如...

C语言:一个涉及指针函数返回值与printf乱码、内存堆栈的经典案例

一个奇怪的C语言问题,涉及到指针、数组、堆栈、以及printf。下面实现: 整数向字符串的转换,返回字符串指针,并在main函数中调用printf显示。 #include#include#inc...

关于对于C语言中主函数参数接返回值的理解

main函数的返回值 main函数的返回值用于说明程序的退出状态。如果返回0,则代表程序正常退出;返回其它数字的含义则由系统决定。通常,返回非零代表程序异常退出。 很多人甚至市面上的一些书籍,都使...

C语言scanf()函数返回值的问题

不经意中发现scanf()的返回值问题,自己试验和了解了一下,一些所知与各位分享; void main()  {  int a; int b; int c; printf("请输入三个整数...

黑马程序员---C语言基础---函数、参数、返回值

------- android培训、java培训、IOS培训期待与您交流! ----------

C语言入门之函数的参数和返回值

什么是函数的参数?什么是函数的返回值?它们俩的作用又是什么呢?估计很多初学者是一头雾水。  说得简单一点,若是我们把函数比喻成一台机器,那么参数就是原材料,返回值就是最终产品。函数的作用就是...

c语言main()函数返回值问题

C语言之Main函数返回值问题分析 C语言之Main函数返回值问题分析: 很多人甚至市面上的一些书籍,都使用了void main( ) ,其实这是错误的。C/C++ 中从来没有定义过void mai...

C语言main函数的参数及其返回值详细解析

main函数的返回值用于说明程序的退出状态。如果返回0,则代表程序正常退出;返回其它数字的含义则由系统决定。通常,返回非零代表程序异常退出 返回值的作用 main函数的返回值用于说明程序的退...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)