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

const关键字

时间:2015-05-09 18:49:13      阅读:103      评论:0      收藏:0      [点我收藏+]

标签:

const是一个类型修饰符,相当于java中的 final ,具体的就不写了~

需要注意的:

//强制修改
    const in a=10;
    printf("%d\n",a);
    int *p=&a;
     *p=100;
    printf("a=%d\n  *p=%d\n",a,*p);
//这里是一个无解的问题, 打印a的数字时 是10 打印 p的数组时是100
//a和 p的地址完全一致, int 占4个字节,即使单字节的地址打印也是一样的
//这里就作为一个小彩蛋好了~目前细究没结果,如果有朋友能找到原因也可以告诉我

当定义指针时

int a=10;
int b=20;

//1.const作用于指针变量,地址指向可以改变,但是地址内的变量不能改变
const int *p =&a;  //给p初始化
                p=&b;   //重新修改p的指向

        *p=1000;//这里报错 

//2.const修饰的指针变量,指针变量指向的变量值可以变,指向不能变
    int * const p2=&a;
        *p2=2000;//值可以变
        p2=&b;//p2的指向不能变

//3.const 修饰的指针变量的指向和值都不能变
    const int *const p3=&a;

  

const关键字

标签:

原文地址:http://www.cnblogs.com/developer-wang/p/4490719.html

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