int main()ide
{spa
printf("\n****************************************************************************"); 3d
//指针指向x1的内存地址,相应x1值变更,p也相应指针
int x1,*p=&x1;blog
x1=10;内存
printf("\nx1=%d",x1); it
printf("\np=%d",*p);class
printf("\n****************************************************************************"); 变量
//改变指针指向的地址im
int x=1,y=2,*p1=&x,*p2=&y;
printf("\nx=%d,y=%d,p1=%d,p2=%d",x,y,*p1,*p2);
p1=p2;
x=3,y=40;
printf("\nx=%d,y=%d,p1=%d,p2=%d",x,y,*p1,*p2);
printf("\n****************************************************************************");
//改变指针p3的值,相应指向x2的值也会跟着改变
int x2=3,y2=4,*p3=&x2;
printf("\nx2=%d,y2=%d,p3=%d",x2,y2,*p3);
*p3=y2+4;
x2=6;
p3=&y2;
printf("\nx2=%d,y2=%d,p3=%d",x2,y2,*p3);
printf("\n****************************************************************************");
//指向常量的指针(不能赋值*p4=30,可是能改变指针指向的地址)
const int *p4=&x2;
printf("\np4=%d",*p4);
p4=&y2;
printf("\np4=%d",*p4);
printf("\n****************************************************************************");
//常指针(固定指向某一变量地址不能改变(p=&y不成立),但它指向的地址的值能够改变*p=20)
int *const p5=&x2;
printf("\np5=%d",*p5);
*p5=20;
printf("\np5=%d",*p5);
printf("\n****************************************************************************");
//指向常量的常指针(指针自己不能改变,指向的地址中的值也不能改变。*p=20和p=&y都不成立)
const int *const p6=&x2;
printf("\np5=%d",*p5);
printf("\n****************************************************************************");
return 0;
}