C中const int *,const int * const和int const *之间的差异
指针
在C语言中,*p表示存储在指针中的值,p表示该值的地址,称为指针。
constint*和intconst*表示指针可以指向常量int,并且该指针指向的int值不能更改。但是我们可以更改指针的值,因为它不是常量,并且可以指向另一个常量int。
constint*const表示指针可以指向一个常量int,并且该指针指向的int值不能更改。而且我们也不能更改指针的值,因为它现在是常量,并且不能指向另一个常量int。
Thumb规则是从右到左命名语法。
// constant指向常量int的指针 const int * const //指向常量int的指针 const int *
范例(C)
取消注释注释的错误代码,然后查看错误。
#include <stdio.h>
int main() {
//示例:intconst*
//注意:intconst*与constint*
const int p = 5;
//q是指向constint的指针
int const* q = &p;
//分配无效
//p的值不能更改
//错误:分配了只读位置“*q”
//*q=7;
const int r = 7;
//q可以指向另一个constint-
q = &r;
printf("%d", *q);
//示例:intconst* const
int const* const s = &p;
// 分配无效
//s的值不能更改
//错误:分配了只读位置“*s”
//*s=7;
// 分配无效
//不能更改
//错误:分配只读变量's'
// s = &r;
return 0;
}输出结果
7
热门推荐
10 新年送顾客祝福语简短
11 晦气的生日祝福语简短
12 单位搬迁员工祝福语简短
13 酒店求婚文案祝福语简短
14 男子成婚诗词祝福语简短
15 烟草客户新年祝福语简短
16 家长不续费祝福语简短
17 工厂祝福语简短10字
18 简短的宝宝出生祝福语