函数可以看作是根据传入信息(输入)及其生成的值或响应的动作(输出)来定义的“黑盒”。
1. 返回值return
-
返回值不一定是变量的值,也可以是任意表达式的值
-
实际得到的返回值相当于把函数中指定的返回值赋给与函数类型相同的变量所得到的值
比如
int what(int n)
{
double z = 1.5312321;
return z;
}
得到z的值为1,即返回了Int的值,造成了数据缺失。
- 使用return 语句的另一个作用是,终止函数并把控制返回给主调函数的下一条语句。
if(n<m)
return n;
else
return m;
printf("hhhhhhhhhhhhhhh");
此时当执行完if else语句以后,printf中的语句将不会被执行。return n/m直接返回给主调函数。
- return;
这条语句会导致终止函数,并把控制返回给主调函数。因为return 后面没有任何表达式,所以没有返回值,只有在void函数中才会用到这种形式。
2. 函数类型
函数类型指的是返回值的类型,不是函数参数的类型。
3. 递归
-
C允许函数调用它自己<有去有回>,这种调用过程称为递归。它拥有一个临界点(即不满足条件的时候),当到达这个临界点的时候就不再继续变小了即继续往下运行,反而是往回走(原路返回),回到最初的时候.<