关于const在深入一点
来源:互联网 发布:sql group by where 编辑:程序博客网 时间:2024/06/06 21:00
首先,回顾一下关于const的基础知识;使用const类型的变量被它限制了。一般分几种。。
第一种:const char string=x(赋值);这个string变量的内容就不可以被改变,如果改变了编译器就会报错。
第二种: char * const p=x(赋值);//指针常量--指针本身是常量,指向的地址不可以变化,但是指向的地址所对应的内容可以变化
第三种:const char*p=x(赋值)//常量指针--指向字符串常量,所指向的字符串内容不能变,但是指向的地址可以变化
好我们接下来看个题目:
#include <stdio.h>
int main()
{ const char *c ="zhang";
printf("%s/n",c);
c = "bei";
printf("%s/n",c);
return 0;
}
咋一看肯定有人会说这个是错误的。
在仔细看还是会有人会说这个是错误的。
有人尝试用编译器试试,结果编译器没有报错(说明这个是对的)
那为什么呢?
首先看const char *c ="zhang";
这里指针指向的zhang是不能被改变的(前面基础有讲)。
再是c = "bei";
这里什么变了??
有人会说zhang被改变为了bei
错错错!!!!!
这里只是指针指向的地方改变了,也就是指针变量的内容变了
原来的zhang字符串里面没有一个字符被改变。
就是这样,你对const有没有加深理解了呢!!!
- 关于const在深入一点
- 关于const和static的一点小记
- 关于const的一点小细节
- 关于const变量的一点理解
- 关于const的一点小花招
- 关于Const指针的一点补充
- C++中关于const, reference(&)一点小结
- 关于const变量的一点理解
- 关于const的一点个人总结 C++
- 关于EditText的一点深入的了解
- 关于EditText的一点深入的了解
- 关于EditText的一点深入的了解
- 关于EditText的一点深入的了解
- C/C++中关于CONST关键字的一点说明
- C语言 关于#define 与const 一点心得
- 关于在技术领域的一点感慨
- 关于Backpropagation在DeepLearning的一点思考
- 对CONST一点收获
- Html中的特殊字符
- SC.exe使用完全指南 (创建系统服务)
- Python Embedding 开发 - Hello World (一)
- C++中的stdafx.h
- Fix: time stamp mismatch on celog.rel
- 关于const在深入一点
- Android开发笔记
- 安装tomcat5时停在jvm.dll的解决
- 收集贴
- radasm 中使用msvcrt的库的方法
- 用VC++遍历某一目录下的所有文件
- 不上qq的日子
- 用C#实现局域网点对点通讯
- C语言处理文件中数据