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

const关键字和指针

时间:2016-05-30 23:29:37      阅读:230      评论:0      收藏:0      [点我收藏+]

标签:

const和指针相结合的四种情况

  四种情况分别如下:

    int cons *p  p本身不是常量,p指向的地址的数据为常量

    const int *p  p本身不是常量,p指向的地址的数据为常量

    int * const p  p是常量,p指向的地址空间内不是常量

    const int * const p  p是常量,p指向的地址空间也是常量

 

  总结:当const在*左边是,修饰的是p指向的地址的数据,当const在*右边是,修饰的p

 

  当用const修饰一个变量时,在gcc下,依然可以通过指针修改变量的值

   int main(void)

    {
      const int a = 5;
      //a = 6; // error: assignment of read-only variable ‘a’
      int *p;
      p = (int *)&a; // 这里报警高可以通过强制类型转换来消除
      *p = 6;
      printf("a = %d.\n", a); // a = 6,结果证明const类型的变量被改了

      return 0;

    }    

const关键字和指针

标签:

原文地址:http://www.cnblogs.com/ldhbetter/p/5544138.html

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