C语言 请帮忙详细解释下x++和++x#include int x = 1;int f(int x){ return (x++);}main(){ int y; y = f(2); x = f(x); printf("y=%d x=%d\n",y,x);}运行结果是2,1有点搞不懂return(x++)到底是要返回什么值啊?
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/25 12:49:11
xRJQ!1{7zq1&VR ]Dɤ%2OB{αɨ 豗^k_k&
S㉶tDWy&+j4#zߘdV"9+Q7w[(Ƒ$8"0Mv<S @z7Q`j20 U
hIJ[HzpC)MGeZ/vj_oWL.αp'6U6ԬnusD7Ic_ʺsم3"gf1m
AҜWwӂh(yMs>-y:>i%Cc۸ ͌,$"d=XV
fl/)p =:Ҽ(ʮ꼔5U/J_
˱cե!La}74
C语言 请帮忙详细解释下x++和++x#include int x = 1;int f(int x){ return (x++);}main(){ int y; y = f(2); x = f(x); printf("y=%d x=%d\n",y,x);}运行结果是2,1有点搞不懂return(x++)到底是要返回什么值啊?
C语言 请帮忙详细解释下x++和++x
#include
int x = 1;
int f(int x)
{
return (x++);
}
main()
{
int y;
y = f(2);
x = f(x);
printf("y=%d x=%d\n",y,x);
}
运行结果是2,1
有点搞不懂return(x++)到底是要返回什么值啊?
C语言 请帮忙详细解释下x++和++x#include int x = 1;int f(int x){ return (x++);}main(){ int y; y = f(2); x = f(x); printf("y=%d x=%d\n",y,x);}运行结果是2,1有点搞不懂return(x++)到底是要返回什么值啊?
x++:先赋值在自加,表达式的值为x,而x的值加1,比如b=5,a=b++,那么a=5,b=6;
++x:先自加后赋值,表达式的值为x加1后的值,x自身加1.比如b=5,a=++b,那么a=6,b=6;
所以你f()函数返回的是x的值,不是加1后的;