下列程序的输出结果是。
#include<;stdio.h>;void swap(int *a, int *b){ int *t;t = a;a = b;b = t;}int main(void){ int x = 3, y = 5, *p = &x, *q = &y;swap(p, q);printf("%d#%d\n", *p, *q);return 0;}
你把int *看成一个整体int,实际上就相当于你的swap函数的形参是int a,int b,那么在自定义函数中交换并不影响其原本值。如果你想实现交换,应该传的为二级指针