下面这段C语言程序的运行结果是多少呢?能给我解释一下吗?

来源:百度知道 编辑:UC知道 时间:2024/06/27 16:35:28
#include<stdio.h>
func(int a,int b)
{int c;c=a+b;
return c;
}
main()
{int x=6, r;r=func(x,x+=2);
printf("%d\n",r);
}
我上机实验的结果是16……

执行过func(x,x+=2)之后,x的值变为8,所以形参a,b接收到的值应为8,8.所以执行过的结果c=a+b=8+8=16,即上机实验的结果为16

14
func(int a,int b)
{int c;c=a+b;
return c;
}
这段是定义一个func函数,c=a+b,返回c的值
x+=2等同于x=x+2
r=func(x,x+=2)=x+x+2=14

14
func 就是定义的一个方法,用于执行两个参数的相加,然后返回相加后的值
main 方法里面:
r就等于把x(即6)和x+=2(即8)作为参数传入func
所以,r=14

14