这是指针版本:
#include<stdio.h>
void swap(int* a, int* b)
{
int temp = *a;
*a = *b;
*b = temp;
}
int main()
{
int a = 1, b = 2;
int *p1 = &a,*p2 = &b;
swap(p1, p2);
printf("a = %d,b = %d\n", *p1, *p2);
return 0;
}
这是引用版本:
#include<stdio.h>
void swap(int* &a, int* &b)
{
int* temp = a;
a = b;
b = temp;
}
int main()
{
int a = 1, b = 2;
int *p1 = &a,*p2 = &b;
swap(p1, p2);
printf("a = %d,b = %d\n", *p1, *p2);
return 0;
}