C语言指针互换值

首先看下C 代码:

#include<stdio.h>
void huhuan(int *p,int *q)
{
	int t;
	t=*p; //t=3
        *p=*q;// b=3; 地址不变 变的是地址指向的值发生变化
	*q=t;//a=5
}
int main(void)
{
	int a=3;
	int b=5;
	huhuan(&a,&b);
	printf("a=%d,b=%d\n",a,b);
	return 0;
}

  //上面程序可能让看得头晕,下面上个示意图

下面是一个内存简单构图

原文地址:https://www.cnblogs.com/yzenet/p/3058490.html