c进阶篇(四)——const用法详解
c进阶篇(四)——const用法详解
前言:
const是c的关键词,可以修饰变量、函数形参、指针,用法相对多样。
1 修饰非指针变量
被 const
修饰的全局或局部变量,其值被初始化后不能再被修改,变量将变为 只读 。
1 |
|
2 修饰指针变量
const和指针变量的搭配,根据const的位置可以分为五种情况。
const int * p
: const限制指针指向的变量是只读,但不限制指针指向修改;int const * p
: 同上面一样,const限制指针指向的变量是只读,但不限制指针指向修改;int * const p
: const限制指针指向不能改变,但指向的变量值可以改变;const int * const p = &a
: const限制了指针的指向不能改变,同时指针指向的变量值也不能改变;int const * const p = &a
: 同上面一样,const限制了指针的指向不能改变,同时指针指向的变量值也不能改变;
2.1 const int * p
或 int const * p
1 |
|
2.2 int * const p
1 |
|
2.3 const int * const p = &a
或 int const * const p = &a
1 |
|
3 运用在函数形参
const运用在函数形参其实还是对变量的修饰,语法上没有什么特殊,只是介绍下这种运用场景。形参使用const是为了增加函数封装的安全性和可读性。
以下是const在函数形参修饰变量。
1 |
|
以下是const在函数形参修饰指针变量。
1 |
|
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 OnlyCalm's Blog!
评论
ValineGitalk