指针和const限定符搭配
来源:互联网 发布:php 文件上传代码 编辑:程序博客网 时间:2024/04/29 02:01
指针和const搭配不同,对所操作的对象能进行的操作也不同,从组合上看,无非有三种组合:
其中type可为int、char等基本数据类型,也可为构造数据类型
1、const type *ptr:我们称此种组合叫指向const对象的指针
linux内核中有很多函数参数就是此种类型,比如
void *memcpy(void *__dest, __const void *__src, size_t __n)
大家可以看到,第二个参数就是用const来修饰的,作用就是在函数内部,不能修改const所修饰的指针的内容,但是入参可以传入任何对象。
总之一句话,可以修改指向const对象的指针指向不同的对象,但是不能修改其内容。
2、type *const ptr,也可以是type const *ptr:我们称此种组合为const指针,需要注意的是定义此种指针需要在定义时进行初始化。
一句话总结此种指针的特性:可以修改其指向的对象的值,但是不能修改其所指的对象,也就是说一旦这个指针指向了一个对象,那么他将始终指向这一个对象,不能再将其指向其他对象。
int temp = 5;
int temp2 = 6;
int *const ptr = &temp; // ok,定义时初始化
ptr = &temp2; //error,不能修改其指向的对象
*ptr = 100; //ok,可以修改其指向对象的值
3、const type *const ptr:我们称此组合为指向const对象的const指针,他兼有以上两种组合的特性:一旦定义了这个指针指向某个对象,将永远不能再让其指向其他对象,同时也不能修改其所指向对象的内容。
- 指针和const限定符搭配
- 指针和const限定符
- 指针和const限定符
- 指针和const 限定符
- 指针和const限定符
- const限定符和指针
- 指针和const限定符
- 指针和const限定符
- 指针和const限定符
- 指针和const限定符
- 指针和const限定符
- 指针和const限定符
- 指针和const限定符
- 指针和const限定符
- 指针和const限定
- C++基础:指针和const限定符
- C++中const限定符和指针
- C++ 指针和const限定符
- 经典的NIM-poj-2975-Nim
- AE二次开发中,过滤后的图层,实现缩放至图层效果
- HDU1874畅通工程续
- STL—容器
- Neo4j
- 指针和const限定符搭配
- STL--stack/queue的使用方法
- 罗大柚OpenGL ES教程系列_LessonY_使用2D纹理渲染文字
- ZOJ3785:What day is that day?
- 为什么不去读顶级会议上的论文?适应于机器学习、计算机视觉和人工智能
- 安卓学习小结
- mysql的学习
- FOJ 2014 4月月赛 D多米诺骨牌
- 4.13 悲惨的周天