您的位置:首页 > 编程语言 > C语言/C++

c, c++ const的区别

2012-12-20 21:36 176 查看
相信很多人对这个是不清楚的。本人也很迷惑,google之,找到了一个精辟的文章。地址如下:

/article/9231742.html

大家可以去看看。。。

总结一下,c语言的const只是声明问只读变量。变量的值在编译期是不知道的。

c++的const是声明问常量,值在编译期就知道了,所以下面的代码可以出现在c++中:

const int size = 10;

char array[size];

数组的大小,也必须要求是在编译期确定的。

关于const修饰指针/变量的问题:

const <data type> <variable>

const 总是把variable修饰为常量, 而不管中间的data type 是基本类型还是自定义类型,或者是typedef。

typedef char * pStr;  

char string[4] = "abc";  

const char *p1 = string;  

const pStr p2 = string; // 这里,const 修饰p2为常量,所以p2++ 等操作会报错的。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: