C语言中return后表达式,返回到主调函数的哪个变量里?

Python09

C语言中return后表达式,返回到主调函数的哪个变量里?,第1张

据说return先把值返回到CPU的一个寄存器里(哪一个我已经忘了),如果主调函数中写了接收变量——x=fun(...)这个样子的,那么就再从寄存器中赋给x。如果没有这么写,等执行下一条语句就被冲掉了,说明主调函数不需要这个返回值。

1、表达式不是函数,没有return这东西。

2、如果表达式作为右值(在=右边)的时候,其返回值是返回给作为左值的变量中,

如int n=1+2表达式1+2的结果3赋值给变量n。

3、至于“如果表达式返回值是非零的 ,那么该表达式返回真值。”意境应该是用在右值表达式赋值给bool类型左值的情况下。而c语言中默认的bool值类型转换函数中,表达式返回值是非零的,转换成bool值时会被转换成true,零被转换成false.