int main()ide
{spa
printf("\n****************************************************************************"); 指針
//指針指向x1的內存地址,相應x1值變更,p也相應blog
int x1,*p=&x1;內存
x1=10;it
printf("\nx1=%d",x1); class
printf("\np=%d",*p);變量
printf("\n****************************************************************************"); im
//改變指針指向的地址margin
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;
}