* 读作 pointer to,从右向左读 * const p 变量p存放在read-only数据段,p为常量指针,p只用于读操作, 告诉编译器,p仅用做右值;读作:p is const pointer to const *p 变量p存放在栈区;*p不一定为常量区,但*p只用于读操作,告诉编译...
分类:
其他好文 时间:
2015-06-03 21:14:49
阅读次数:
105
2015年4月23日 星期四第3章 数据基本数据类型,整型,浮点型,指针,聚合类型基本声明, 初始化声明,数组声明,声明指针,隐式声明typedef与#define区别常量,指针常量,常量指针作用域,4类,文件作用域,函数作用域,代码作用域,原型作用域连接属性,3种,内部,外部,无存储类型,普通内存...
分类:
其他好文 时间:
2015-06-02 12:37:58
阅读次数:
114
如果某个类型别名指代的是符合类型,那么把它用到声明语句中可能会让人误解。比如如下的类型pstring,实际上是char*的别名:
typedef char *pstring;
const pstring cstr = 0; // cstr是一个指向char的常量指针
const pstring *ps; // ps是一个指针,它的对象是指向char的常量指针
上述两条声明语句的...
分类:
编程语言 时间:
2015-05-26 09:21:43
阅读次数:
182
常量指针:const int* x 说明被指的x是常量,指针本身是变量。如果指针指向常量,必须使用常量指针指针常量:int* const y 说明指针本身是常量,指向的内容可改变数组指针的引用: 指针[] 表示数组元素,括号提示为数组1 int list[6]={1,2,3,4};2 int *.....
分类:
编程语言 时间:
2015-05-25 18:06:50
阅读次数:
127
指针本身是一个对象,它可以指向另一个对象。因此,指针本身是不是常量和指针所指的对象是不是常量就是两个独立的问题。
顶层const表示指针本身是个常量。
底层const表示指针所指的对象是个常量。
下面所示,pi就是一个常量指针,不能修改pi的值。而pd则是一个指向常量的常量指针,既不能修改pd的值,也不能通过pd修改其指向对象的值。
int i = 0;
int *const pi = &...
分类:
其他好文 时间:
2015-05-22 13:29:58
阅读次数:
231
数组与指针生来就是双胞胎,多数人就是从数组的学习开始指针的旅程的。在学习的过程中,很自然就会经常听到或见到关于数组与指针的各种各样的看法,下面我节选一些在各种论坛和文章里经常见到的文字:“一维数组是一级指针”“二维数组是二级指针”“数组名是一个常量指针”“数组名是一个指针常量”..............
分类:
编程语言 时间:
2015-05-21 10:28:23
阅读次数:
145
C++11使用nullptr关键字,是表达更准确,类型安全的空指针
指向常量的指针
不能通过指向常量的指针改变所指对象的值,但指针本身可以改变,可以指向另外的对象。
例
int
a;
const
int *p1 = &a; //p1是指向常量的指针
int
b;
p1
= &b; //正确,p1本身的值可以改变
...
分类:
编程语言 时间:
2015-05-20 09:49:02
阅读次数:
96
说一下常量指针和指针常量 的区别。常量指针 指向常量的指针,也就是说指针指向的对象是常量,指向的常量不能修改。指针不是一个常量,可以把指针指向别一个常量。常量指针是我们最常用的,一般声明形式如下: const int *p; int const *p;例: int a(1...
分类:
其他好文 时间:
2015-05-19 23:59:06
阅读次数:
264
关键词 const ?表示为只读 也就是常量 const?int??*aa??=?new?int(5);//*aa的值为常量和int?const*aa?等价
aa?=?new?int(3);//ok
*aa?=?7;//error
int??*?const?bb?=?new?int(5);//bb...
分类:
其他好文 时间:
2015-05-18 14:52:05
阅读次数:
96
1、指针的基本概念计算机给我们的内存若干个存储单元,每个单元都有唯一地址,每个单元都可以存储内容地址唯一的,获取地址的方法“&变量名”地址所对应的存储单元可变的地址就是指针。2、指针与变量指针变量:用来存放地址(指针)的这个变量就是指针变量(指针变量只能存放地址)注意:指针是一个地址,是常量指针变量...
分类:
编程语言 时间:
2015-05-13 12:44:38
阅读次数:
140