c指针和const 的小程序
1 #include<stdio.h> 2 int main(void) 3 { 4 double rates[3] = {11.1,22.2,33.3}; 5 6 const double *pc1;//不可以更改所指向的数据,但是可以更改所指向的地址 7 8 double * const pc2 = rates;//不可以更改所指向的地址,但是更改所指向的数据 9 10 const double * const pc3 =rates+2;// 既不···也不能··· 11 12 pc1 = rates; 13 pc1++; //更改地址 14 15 *pc2 =44.4; //更改数据 16 17 printf("%p \n%p\n%p\n",pc1,pc2,pc3); 18 printf("%f\n%f\n%f\n",*pc1,*pc2,*pc3); 19 20 21 return 0; 22 }
总结:1,常量数据的地址 不能赋值给普通 的指针,如果能够赋值,就能通过 指针修改这个常量啦
2、const double *pc1 PC1 没有改变所指向数据的权限了
3、double * const pc2 = rates; 指针指向的地址没法变了,但是内容可以变
指针 操作,要时刻区分这三个概念:指针地址、指针指向的地址、指针指向地址的内容
posted on 2013-09-04 14:02 イケメンおっさん_汪汪 阅读(216) 评论(0) 编辑 收藏 举报