常量指针:指针指向的内容是常量。有两种定义方式:

const int *n;
int const *n;

常量指针是说不能通过这个指针改变变量的值,但是还是可以通过其他的引用来改变变量的值。

int a=5;
const int* n=&a;
a=6;

常量指针指向的值不能改变,但是这并不意味着指针本身不能改变,常量指针可以指向其他的地址。

int a=5;
int b=6;
const int * n=&a;
n=&b;

指针常量:这个指针本身是一个常量,不能指向其他的地址。

int * const n=address;

 指针常量指向的地址不能改变,但是你可以通过指针常量来改变指针指向的变量的值:

int a=5;
int * const n=address;
*n=8;

 区分常量指针和指针常量的关键在于星号的位置,如果const 在星号的左边,为常量指针。

如果const 在星号的右边则为指针常量。

将*读作指针,将const读作常量。则:

int const *n;  //常量指针
int *const n;//指针常量

  

 

posted on 2018-03-27 08:47  未完代码  阅读(156)  评论(0编辑  收藏  举报