c语言|C语言-函数返回值return


c语言|C语言-函数返回值return


①为什么需要return?
为了回答这个问题 ,
我打算用模块思维来解释 。

②定义模块(形参模块)
定义函数:f(s)(ab)
满足公式:s=a+b
函数名:f(s)
形参:ab(公式中的变量)
函数返回值:return s

③调用模块(实参模块)
主函数:main()表示用户自己编写的部分
调用函数:f(s)(12)
满足公式:x=f(s)(12)
函数名:f(s)和定义函数一致 , 产生调用
实参:1 , 2(赋值给公式的值)
求值:printf(\"%d\n\"x) , 求x的值?
【c语言|C语言-函数返回值return】
④值的传递过程
调用模块中调用函数x=f(s)(12)
将实参1和2的值赋值给
定义模块中的形参a和b
(实参到形参是单向传递 , 不可逆)

定义模块计算出s=a+b=1+2=3

定义模块中的return s
将s的值赋值给
调用模块中的函数f(s)(12)
即x=f(s)(12)=s=3
~
return s的作用
就是将定义模块中的s
赋值给调用模块中的调用函数

如果没有return s
调用模块中的调用函数将永远没有定值
即所求x无定值

这一点和数学不一样 ,
数学中
同一函数名的值是通用的 ,
C语言中
定义函数和调用函数的值是隔离的 ,
尽管函数名一样
如果不赋值 , 调用函数永远无定值 。

    推荐阅读