首页 > 其他 > 详细

const关键字

时间:2015-05-09 18:48:28      阅读:265      评论: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
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!