关于指针的一些小问题
1、以下程序输出结果是?sample1.cdouble fun(double x,double y)
{
x++;
y++;
return x+y;
}
main()
{
double x=10,y=20,z;
z=fun(x,y);
printf("x=%f,y=%f,z=%f\n",x,y,z);
}
2.double fun(double *x,double *y)
{
(*x)++;
(*y)++;
return *x+*y;
}
main()
{
double x=10,y=20,z;
z=fun(&x,&y);
printf("x=%f,y=%f,z=%f\n",x,y,z);
}
为什么两个代码因为第二个是指针而可以存入x,y 本帖最后由 jhq999 于 2022-1-24 07:12 编辑
1、10 20 32
2、11 21 32
第一个传入的是数值,形参改变实参不改变,第二个传入的是指针,改变的是形参指针指向的值,和实参指针指向的值都在一个地方。 jhq999 发表于 2022-1-24 07:08
1、10 20 32
2、11 21 32
第一个传入的是数值,形参改变实参不改变,第二个传入的是指针,改变的是形参指 ...
好的 谢谢~
页:
[1]