关于const与指针
来源:互联网 发布:郑州软件测试招聘 编辑:程序博客网 时间:2024/05/21 08:56
常量(const)指针和“指向常量(const)对象”的指针
定义常量指针时必须同时初始化它,以后不能更改它:
int var; int * const c_ptr = &var; //指向int的常量指针 *c_ptr = 123; //true:没有修改指向的对象,但可以修改指向的对象的值 ++c_ptr; //false:不能修改常量指针本身
指向常量(const)对象的指针:
int var; const int c_var = 100; //常量int对象 const int * ptr_to_const; //指向const int对象的指针,此时是指针本身不是常量 ptr_to_const = &c_var; //true var = 2 * *ptr_to_const; //true ptr_to_const = &var; //true if(c_var < *ptr_to_const){ *ptr_to_const = 77; //false:虽然var不是常量,但是ptr_to_const这个指针指向的对象“const int”是个常量对象,所以无法修改它 }
可以将指向非常量的指针隐式转换为指向常量的指针:
int *ptr = &var; ptr_to_const = ptr;
但无法隐式地将指向常量的指针转换为指向非常量的指针:
ptr = &c_var; //false ptr = (int *)&c_var; //true
以上内容来自《c in a nutshell》
总结:const在*左侧则为指向某常量对象的指针,const在*右侧则为指向某对象的常量指针
0 0
- 关于const与指针
- const与const指针
- 指针:const与指针
- 关于 const 指针
- 关于const 指针
- 关于const和指针
- 关于const修饰指针
- 关于指针和const
- 关于const修饰指针
- 关于const修饰指针
- 关于const常量与指针赋值的问题
- 第二遍C++primer->关于指针与const
- 关于const与指针混合使用的助记法
- C语言中关于const与指针结合的理解
- 关于const关键字与指针的相关使用要点
- const 指针与指向const的指针
- 指向const的指针与const指针
- const 指针与指向const的指针
- sdut2605山东省赛第四届/( A^f(1)+A^f(2)+ ... + A^f(n) )% P/存储中间值/将大数打表并用两个数组组合表示
- (总结)Linux常用指令 join指令 find指令 grep指令
- Java中HashMap遍历的四种方式
- Spring内部Bean
- HDOJ 1018 Big Number(大数位数公式)
- 关于const与指针
- 懒人cocos2dx系列之前言
- linux基础(一)
- 2016-3-20 BCTF 做题记录
- VB.NET & DataGridView与数据库的连接
- STL适配器(ostream_itertor与istream_iterator)
- 使用GridView以表格形式显示多张图片
- 编写可读代码的艺术 (4)
- Python学习笔记:函数参数