大家好,我是苏貝,本篇博客带大家了解const修饰普通变量和指针,如果你觉得我写的还不错的话,可以给我一个赞👍吗,感谢❤️
一.const修饰普通变量
用const修饰普通变量时,是在语法层面限制了变量的修改,但是本质上,变量还是变量,是一种不能被修改的变量。以下两种定义方式都可以:
const int a = 10;
int const b = 10;
变量的值不能修改,否则会报错
但变量的值可以通过指针进行修改:
所以为避免变量的值被修改,同时又需要使用指针指向变量,那么就让const修饰指针
二.const修饰指针
const 可以放在 * 左边 ,可以放在 * 右边 ,也可以放在 * 左右两边,这3种方式的意义各不相同
1.const 放在 * 左边
const 放在 * 左边限制的是指针指向的内容,也就是说:不能通过指针来修改指针指向的内容,但是指针变量是可以修改的,也就是指针可以指向其它变量
int main()
{
const int a = 10;
const int* p = &a;
*p = 20;//err
int b = 20;
p = &b;//ok
return 0;
}
2.const 放在 * 右边
const 放在 * 右边限制的是指针变量本身,指针变量不能再指向其它内容,但是可以通过指针变量来修改指针指向的内容
int main()
{
const int a = 10;
int* const p = &a;
*p = 20;//ok
int b = 20;
p = &b;//err
return 0;
}
3.const 放在 * 左右两边
const 放在 * 左右两边限制的是指针变量本身和指针变量指向的内容,也就是说:不能通过指针来修改指针指向的内容,指针也不能指向其它变量文章来源:https://www.toymoban.com/news/detail-654432.html
int main()
{
const int a = 10;
const int* const p = &a;
*p = 20;//err
int b = 20;
p = &b;//err
return 0;
}
好了,那么本篇博客就到此结束了,如果你觉得本篇博客对你有些帮助,可以给个大大的赞👍吗,感谢看到这里,我们下篇博客见❤️文章来源地址https://www.toymoban.com/news/detail-654432.html
到了这里,关于【C语言】const修饰普通变量和指针的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!