常量与指针
来源:互联网 发布:淘宝可以寄海外 编辑:程序博客网 时间:2024/05/01 21:16
一、指向常量的指针
int a = 10;const int b = 20;int *pi = &a;//指向非常量的指针const int *pci = &b;//或者int const *pci;
此时pci被定义为指向整数常量,我们不同修改指针指向的值,但可以修改指针的值,比如:
pci = &a;是正确的,这里pci被修改了,指向一个非常量的值,同时pci还可以被修改指向其他的整型常量;
但是,*pci = 100;是错误的,因为不允许修改指针引用的值。
另外,虽然我们不能修改指针指向的值,但是却可以读取它,printf("%d\n",*pci);//10
二、指向非常量的常量指针
int c = 2;int *const cpi = &c;*cpi = 6;//正确的,指针指向的数据可以被修改
int n = 10;cpi = &n;//错误,指针不能被修改
const int m = 10;cpi = &m;//错误,必须被初始化为指向非常量
三、指向常量的常量指针(用的很少)
int d = 8;const int e = 13;const int *const cpci = &e;指向常量的常量指针必须进行初始化,不初始化会报错;
cpci = &d;//错误,因为指针不能被修改
*cpci = 4;//错误,因为不能修改指针指向的值
四、指向‘指向常量的常量指针’的指针
const int num = 200;const int *const cpci = #const int *const *pcpci = &cpci;printf("%d\n",*cpci);//200
printf("%d\n",**pcpci);//200
最后,有一个解读指针声明的好办法:倒着读,即从后往前解读,会加速理解,可以试一试。
0 0
- 常量指针与指针常量
- 常量指针与指针常量
- 常量指针与指针常量
- 常量指针与指针常量
- 常量指针与指针常量
- 常量指针与指针常量
- 常量指针与指针常量
- 指针常量与常量指针
- 指针常量与常量指针
- 指针常量与常量指针
- 常量指针与指针常量
- 常量指针与指针常量
- 常量指针与指针常量
- 常量指针与指针常量
- 常量指针与指针常量
- 常量指针与指针常量
- 常量指针与指针常量
- 常量指针与指针常量
- 倒水
- java中的循环语句
- 剑指offer面试题 不用加减乘除做加法&&不能被继承的类
- webservice入门笔记二soap消息的处理
- 【c++】挑7
- 常量与指针
- ListView 和 数据适配器
- 数百万辆汽车的最强大脑——云端车联网架构实战
- 多通道(比如RGB三通道)卷积过程
- Hadoop多文件输出问题汇总
- HDFS源码分析之EditLogTailer
- DCT, DST, Walsh, Hadamard , Haar和Slant图像处理程序
- 常用的第三方框架
- AndroidManifest.xml 配置文件