#include <stdio.h>
void swap1(int a, int b)
{
int t;
t = a;
a = b;
b = t;
printf("in swap1(),a=%d,b=%d\n", a, b);
}
void swap2(int *a, int *b)
{
int t;
t = *a;
*a = *b;
*b = t;
printf("in swap2(),a=%d,b=%d\n", *a, *b);
}
void swap3(int *a, int *b)
{
int *t;
t = a;
a = b;
b = t;
printf("in swap3(),a=%d,b=%d\n", *a, *b);
}
int main()
{
int a1 = 1, a2 = 2, a3 = 3, a4 = 4, b1 = 11, b2 = 22, b3 = 33, b4 = 44;
printf("before swap1(),a1=%d,a2=%d\n", a1, b1);
swap1(a1, b1);
printf("after swap1(),a1=%d,a2=%d\n", a1, b1);
printf("\n");
/* before swap1(),a1=1,a2=11
in swap1(),a=11,b=1
after swap1(),a1=1,a2=11 */
printf("before swap2(),a2=%d,b2=%d\n", a2, b2);
swap2(&a2, &b2);
printf("after swap2(),a2=%d,b2=%d\n", a2, b2);
printf("\n");
/* before swap2(),a2=2,b2=22
in swap2(),a=22,b=2
after swap2(),a2=22,b2=2 */
printf("before swap3(),a3=%d,b3=%d\n", a3, b3);
swap3(&a3, &b3);
printf("after swap3(),a3=%d,b3=%d\n", a3, b3);
printf("\n");
/* before swap3(),a3=3,b3=33
in swap3(),a=33,b=3
after swap3(),a3=3,b3=33
*/
return 0;
}
形参变化,影响or不影响影响实参
最新推荐文章于 2024-07-09 21:36:59 发布