求a和b的值,为什么?谢谢
发布网友
发布时间:2023-05-05 17:36
我来回答
共2个回答
热心网友
时间:2023-10-09 21:30
首先指出一个小错误:int t;应该为 int *t;
在swap函数中,只是把传入的地址在函数内部作了交换,并没有实质影响到它指向的值。所以输出结果是: a=3,b=4
若要将值改变需要作如下修改:
void swap(int *a,int *b)
{
int t;
t=*a; //将a指向的值赋给t t = 3;
*a=*b; //将a指向的值改变为b指向的值,这里为 *a = 4;
*b=t; //将b指向的值改变为t *b = 3;
}
热心网友
时间:2023-10-09 21:30
a和b的值交换