复习下const指针

来源:互联网 发布:平安证券交易软件下载 编辑:程序博客网 时间:2024/06/01 08:07

 

 

const与指针的三种结合

(1)指向常量对象的指针不能修改被指向对象的值,但是能修改指向的对象,由指向A改为指向B

const char*p="some string"

(2)指向某个对象的常量指针不能修改指向的对象,但是能修改指向对象的值,指向对象A的值由a改成b

char const *p="some string"

(3)指向常量对象的常量指针上面说的两种情况都不能修改

const char const *p="some string"

 

 

char *pstr[]={"zct1","zct2"};

上面这个数组中各个指针给初始化成“zct1”“zct2”字符串字面值的地址。字符串字面值的类型是“const char数组”

因此将const数组的地址存入非const的指针中,编译器允许这么做只是为了向后兼容现有的代码。

 

如果是这样使用:*pstr[0]="zct"

则编译不能通过了。

原创粉丝点击