C语言指针实现两个数的互换

#include <stdio.h>

void change1(int a, int b)//形参与实参不是同一个变量
{
int t;
t = a;
a = b;
b = t;

}

void change2(int * a, int * b)//只是把两个变量的地址存储的位置换了,但是变量的值未发生变化
{
int * t;
t = a;
a = b;
b = t;

}

void change3(int *, int *);

int main(void)
{
int a = 3;
int b = 5;

change3(&a , &b);
printf("a = %d b = %d\n",a ,b);
return 0;
}

void change3(int * a, int * b)//将两个地址里面的值进行了互换
{
int t;
t = * a;
* a = * b;
* b = t;

}

猜你喜欢

转载自www.cnblogs.com/bingyunbuxi/p/9900324.html