码迷,mamicode.com
首页 > 其他好文 > 详细

int *p,cons int *p,int const *p,int * const p,const int * const p,int const * const p的区别

时间:2014-08-01 02:25:50      阅读:226      评论:0      收藏:0      [点我收藏+]

标签:style   blog   http   color   strong   io   2014   cti   


  1. 加有const关键字的几种情况的辨析

const修饰的代码

含义(特点)

等价性

int *p = #

1.       可以读自己

2.       可以通过*p改自己

3.       可以通过p = &data来看别人

权限最大

cons int *p = #

1const放在左边意味着指向的是常量,这个常量不可以修改,

2p = &data; (地址可以修改)

3*p = 30;(这个时候是错误的)

这两者等价(应用:查看别人的账户)

int const *p = #

(和上面的等价)限定只能读不可以修改,地址可以移动

int * const p = #

不可以修改自己的地址,但是可以通过*p来修改自己的值

 

const int * const p = #

不可以修改地址来看其它的值,也不可以修改自己的,只能看自己的

1、可看自己

2、不改自己

3、不能看别人

int const * const p = #

限定只能看自己的账户,只能读不可写

 

  1. 只能在初始化的时候才能够赋值(const限定了不能随便修改变量)

  2. const总结

const’*’左边意味着我指向的是常量。

const’*’右边意味着我指针式一个常量。

bubuko.com,布布扣

当把上面的p=&data;改成了*p = 3;这个时候就不可以了。截图如下:

bubuko.com,布布扣

 

  1. int const *p

bubuko.com,布布扣

  1. int * const p; 不可以修改自己的地址,但是可以通过*p来修改自己的值

bubuko.com,布布扣

可以通过*p的方式进行修改

bubuko.com,布布扣

6.const int * const p = &data; 这种方式只能看自己的,不能修改别人的,也不能改变自己。

bubuko.com,布布扣

只能看自己:

bubuko.com,布布扣

int *p,cons int *p,int const *p,int * const p,const int * const p,int const * const p的区别,布布扣,bubuko.com

int *p,cons int *p,int const *p,int * const p,const int * const p,int const * const p的区别

标签:style   blog   http   color   strong   io   2014   cti   

原文地址:http://blog.csdn.net/tototuzuoquan/article/details/38327175

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!