c语言的指针理解
//做人做事我笃信阳明心学的知行合一
//编程之道完美诠释知行合一
//对某一个问题哪怕有一点点的不清楚,那就是完全不清楚
//对一个问题,只有知与未知两个状态,没有中间状态
//下面的代码应该能够加深对C语言指针的理解
#include<stdio.h>
main()
{
int a,b,t;
int *p,*q;
scanf("%d,%d",&a,&b);
//对于这行代码,是否实现*p与a的完全等价,是值得怀疑的
p=&a;q=&b;
printf("before swap:\n");
printf("a=%d,b=%d\n",a,b);
t=*p;
printf(" t=*p;\n");
printf("a=%d,b=%d\n",a,b);
*p=*q;
printf(" t=*p;\n");
printf(" *p=*q;\n");
printf("a=%d,b=%d\n",a,b);
*q=t;
printf("after swap:\n");
printf("a=%d,b=%d\n",a,b);
//这一个流程发现*p就是a,本质上是值交换
}
posted on 2018-08-04 22:08 luoganttcc 阅读(...) 评论(...) 编辑 收藏