指针常量和常量指针

来源:互联网 发布:java http请求框架 编辑:程序博客网 时间:2024/06/15 15:52

学习C/C++的指针部分是关键,然而指针也是C/C++的难点,再此举例说明另个比较容易的概念:指针常量和常量指针。

指针常量:指的是指针本身就是个常量,注意这里说的是指针本身是常量,指针是用来指向某个对象的,(指针也就是这个对象的地址)指针本身是常量,就是这个地址是个常量,不能更换,但是可以更换这个地址存放的值,举个例子,这个指针指向一个房子,永远的指向这个房子,房子不能更换,但是房子里面的人可以换。

常量指针:指向常量的指针,与上面的相反,你可以用它来指向其他的房子,但是却不能通过它来更换房子里面人。

下面举例说明:

char ch = 'h';char s = 'm';const char*p1 = &ch;//常量指针:可以通过它更换指向的对象,但是不能改变指向对象的值;char *const p2 = &ch;//指针常量:可以通过它更改对象的值,但是不能更改指向的对象;p1 = &s;//正确;*p1 = 'k';//错误;*p2 = 'k';//正确;p2 = &s;//错误;


原创粉丝点击