Const
- 什么是CONST
- 被const修饰后的变量,只能保持一个值,无法再次赋值(一次指定用一辈子);
int main(){
const int age=18;
//age =20;//这句错误无法执行!!!
return 0 ;
}
- 如果修饰的是类、结构体、结构体或类的指针、其成员都不可以更改
struct date{
int year;
int month;
int day;
}
int main(){
/*const struct date y_2024 {
2024, 3, 9
};*/
/*const*/struct date * ptr = &y_2024;//指针指向const 修饰的结构体
(*ptr).month = 2012;//(*p)取出指针所指向的(当前指向的是y_2024)可以赋值 如果定义指针时前面加上修饰词const则无法赋值,编译出错
ptr.year->year=2012;//错误不可修改!!
y_2024.year=2012;//错误,不可修改!!
return 0 ;
}
总结
被const修饰的东西只能保持默认数值,不可以修改。
这是什么意思分别是什么含义
- const修饰的是其右边的内容!修饰左边的所有类型名
int age=10;
int *px=&age;//px内存储的是age的逻辑地址 *px是访问age的数值
const int *p1=&age;//修饰的是 *p1 修饰的一般是整体 所以p1可以修改,可以通过修改其指向的逻辑地址来修改数值
int const *p2=&age; //修饰的是 *p2
int * const p3=&age;//修饰的是p3与*无关 p3就是常量 而*p3可以赋值,非常量
const int * const p4=&age;//修饰的*p4和p4 他俩都是常量 所以俩都不能修改
int const * const p5=&age;//和p4一样的没啥好说的
标签:const,int,age,2024,理解,year,修饰
From: https://www.cnblogs.com/dxwxb/p/18067998