当前位置 博文首页 > CW_qian的博客:8月22日笔记C语言基础(补2)const 关键字
const 关键字与const指针
?? ?const关键字的作用是不能改变变量里面的内容
?? ?
?? ?1.const变量
?? ??? ?定义: const 数据类型 变量名
?? ??? ?const int a; a = 10;
?? ??? ?
? ?2.const指针?? ?
?? ??? ?1.常指针,用的比较少
?? ??? ??? ?const修饰指针本身,表示指针变量无法修改
?? ??? ??? ?demo:
????????????????? ?const char a = 10; // 正确的,初始化的时候赋值,赋值后就不能修改了
?? ??? ??? ??? ?//a = 20;// 错误,不能修改a的内容
?? ??? ??? ??? ?
?? ??? ??? ??? ?char b;
?? ??? ??? ??? ?// 常指针,用的比较少
?? ??? ??? ??? ?//char *const p = &a;
?? ??? ??? ??? ?//p = &b; // 错误的,p指向的地址不能变?? ? ? ?? ? ?
? ? ? ? 2.常目标指针,用的最多
?? ??? ??? ?限制指针的权限,只能读取指针里面的数据,但是不能修改里面的内容
?? ??? ??? ?指向的目标不能变,比如 : 班级点名表,只能看,不能修改里面的内容
?? ??? ??? ?demo:
?? ??? ??? ??? ?// 常目标指针,用的最多
?? ??? ??? ??? ?const char *q = &a;?
?? ??? ??? ??? ?q = &b; // 正确的
?? ??? ??? ??? ?
?? ??? ??? ??? ?//*q = b;
?? ??? ??? ??? ?
?? ??? ??? ??? ?const char *src = "abc";
?? ??? ??? ??? ?char dest[4];
?? ??? ??? ??? ?
?? ??? ??? ??? ?strcpy(dest,src);
?? ??? ??? ??? ?printf("%s\n",dest);
?? ??? ??? ??? ?
?? ??? ??? ??? ?// 常目标指针另一种写法,笔试题用的比较多
?? ??? ??? ??? ?char const *p = &a;
?? ??? ??? ??? ?p = &b;
?? ??? ??? ??? ?
?? ??? ??? ??? ?*p = 456;?? ?? ? ? ? ? ? ? ??