小明碰到一道数学选择题问小刚,小刚算了一会给小明说计算结果是100,应选A。那么小刚给小明的反馈就可以说是小刚的一个返回值。
那么函数的返回值是指函数被调用之后,执行函数体中的程序段所取得的并返回给主调函数的值。
函数的返回值要注意以下几点:
1. 函数的值只能通过return语句返回主调函数。return语句的一般形式为:
return 表达式 或者为: return (表达式);
2. 函数值的类型和函数定义中函数的类型应保持一致。如果两者不一致,则以函数返回类型为准,自动进行类型转换。
就如小刚说选A,那么就返回一个字符型数据,用代码表示就是:
小刚说值为100,那么就返回一个整型数据,用代码表示就是:
3. 没有返回值的函数,返回类型为void。如果小刚算了一会没有返回结果的话,那么用代码表示就是:
注意:void函数中可以有执行代码块,但是不能有返回值,另void函数中如果有return语句,该语句只能起到结束函数运行的功能。其格式为:return;
#include <stdio.h> /* Jone算出结果应该怎么写函数? */ ? joneResult(int x, int y, int z) { int sum = x+y+z; ? //这里是不是应该将sum返回呢? } /* Jack没有算出结果只说了一句话是不是应该用无返回值函数? */ ? jackResult(int x, int y, int z) { printf("我算不出来\n"); } int main() { int a, b, c; a = 10; b = 20; c = 30; //Jone的返回值类型是什么? jR = joneResult(a, b, c); printf("Jone运算结果是:%d\n", jR); printf("Jack运算结果是:"); //Jack没有算出结果只说了句话,是不是直接调用函数就可以了? ? return 0; }