c语言关键字:const
2015-05-06 17:27
169 查看
const 限定一个变量不允许被改变,可提高程序安全性,利于他人理解程序。该关键字也存在于C++、PHP5、C#语言中。
例:以下程序会有一处报错
typedef char* pStr;
const char *p1 = "string";
const pStr p2 = "string";
p1++;
p2++;
解析:p2++ 会报错。
const使用的基本形式: const type m;限定m不可变。替换基本形式中的m为1式中的*p1,替换后const char *p1;限定*p1不可变,当然p1是可变的,因此问题中p1++是对的。替换基本形式中的type为2式中的pStr,替换后const pStr m;限定m不可变,题中的pStr就是一种新类型,因此问题中p2不可变,p2++是错误的。
const只修饰其后的变量,至于const放在类型前还是类型后并没有区别。如:const int a和int const a都是修饰a为const。注意*不是一种类型,如果*pType之前是某类型,那么pType是指向该类型的指针。
例:以下程序会有一处报错
typedef char* pStr;
const char *p1 = "string";
const pStr p2 = "string";
p1++;
p2++;
解析:p2++ 会报错。
const使用的基本形式: const type m;限定m不可变。替换基本形式中的m为1式中的*p1,替换后const char *p1;限定*p1不可变,当然p1是可变的,因此问题中p1++是对的。替换基本形式中的type为2式中的pStr,替换后const pStr m;限定m不可变,题中的pStr就是一种新类型,因此问题中p2不可变,p2++是错误的。
const只修饰其后的变量,至于const放在类型前还是类型后并没有区别。如:const int a和int const a都是修饰a为const。注意*不是一种类型,如果*pType之前是某类型,那么pType是指向该类型的指针。
相关文章推荐
- C语言关键字 - 铁布衫:const
- C语言关键字:auto、static、register、const、volatile 、extern 总结 <转>
- C语言关键字 - 铁布衫:const
- C语言关键字 - const
- [经验] C语言关键字中static,volatile,const,extern,return含义及作用?
- C语言关键字----Const
- C语言关键字auto、static、register、const、volatile、extern
- C语言关键字之const
- C语言关键字 - 铁布衫:const
- C语言关键字之const
- C语言关键字 - 铁布衫:const
- C语言关键字const
- C语言关键字:auto、static、register、const、volatile 、extern 总结 <转>
- C语言关键字 - 铁布衫:const
- C语言关键字 - 铁布衫:const 转载
- C语言关键字----Const
- C语言关键字:static,const,inline,volatile与assert()等
- extern "C" ,const type& fun() const
- const in C++
- 如何正确使用const、static、extern