物联网学习教程—函数的返回值

281 阅读1分钟

  函数的返回值是通过函数调用使主调函数得到的确定值。

  例如:例1中,max(2,3)的值是3,max(5,2)的值是5。赋值语句将这个函数值赋给变量c。

  说明:

  (1)函数的返回值是通过函数中的return语句获得的。

  一个函数中可以有一个以上的return语句,执行到哪一个return语句,哪一个语句起作用。

  return语句后面的括弧也可以不要

  例如:“returnz;”等价于“return(z);”

  return后面的值可以是一个表达式。

  例如:max(intx,inty)

  {return(x>y?x:y);}

  (2)函数的返回值应当属于某一个确定的类型,在定义函数时指定函数返回值的类型。

  例如:下面是3个函数的首行:

  int max(floatx,floaty)/函数值为整型/

  char letter(char c1,char c2)/函数值为字符型/

  double min(intx,inty)/函数值为双精度型/

  注意:

  凡不加类型说明的函数,自动按整型处理。

  (3)在定义函数时指定的函数类型一般应该和return语句中的表达式类型一致。

  如果函数值的类型和return语句中表达式的值不一致,则以函数类型为准。

  对数值型数据,可以自动进行类型转换。即函数类型决定返回值的类型。

  (4)对于不带回值的函数,应当用“void”定义函数为“无类型”(或称“空类型”)。此时在函数体中不得出现return语句。

  例2、返回值类型与函数类型不同

  #include<stdio.h>

  void main()

  {intmax(floatx,floaty);

  floata,b;

  intc;

  scanf("%f,%f,",&a,&b);

  c=max(a,b);

  printf("Maxis%d\n",c);

  }

  int max(floatx,floaty)

  {floatz;/z为实型变量/

  z=x>y?x∶y;

  return(z);

  }