常量指针: const int *p = &a; 或者 int const *p = &a; *p是常量,不能将*p作为左值进行操作。但指针p还是一个变量,它的内容存放常量的地址,所以先声明常量指针再初始化是允许的,指针也是允许修改的 指针常量: int * const p = &a; 指针本身是一 ...
分类:
其他好文 时间:
2016-09-24 17:29:12
阅读次数:
141
常量指针定义:常量是形容词,指针是名词,以指针为中心的一个偏正结构短语。这样看,常量指针本质是指针,常量修饰它,表示这个指针乃是一个指向常量的指针。指针指向的对象是常量,那么这个对象不能被更改。常量指针的使用要注意,指针指向的对象不能通过这个指针来修改,可是仍然可以通过原来的声明修改,也就是说常量指 ...
分类:
编程语言 时间:
2016-09-01 20:00:59
阅读次数:
146
8.1 数组名和指针 a称为一个标量,表示一个单一的值,变量的类型是整数。 b是数组,b[1]的类型是整数,b是一个指针常量,表示数组第一个元素的地址。b的类型取决于数组的类型,在这里b是指向int的常量指针,如果是其他类型的数组,那么就是指向其他类型的指针常量。 但是数组和指针并不相同,数组是有确 ...
分类:
编程语言 时间:
2016-08-24 01:00:29
阅读次数:
152
传送门 常量指针和指针常量的区别详解 在C/C++中关键字const用来定义一个只读的变量或者对象,有如下优点 (1)便于类型检查,如函数的函数 fun(const int a) a的值不允许变,这样便于保护实参。 (2)功能类似与宏定义,方便参数的修改和调整。如 const int max = 1 ...
分类:
其他好文 时间:
2016-08-14 11:34:39
阅读次数:
130
c语言中声明常量的两种方式 如果要声明常量的指针,即指向常量的指针,则可以参考上面的常量声明修改一下 把*ptr看成一个整体,那么*ptr中的ptr就是指向常量的指针了。顾名思义,指向常量的指针,那么就不可以通过这个指针去修改这个值了。 但仍可以通过其他方式修改这个量的值。例如 常量指针的意义就是不 ...
分类:
其他好文 时间:
2016-08-12 01:17:42
阅读次数:
123
在C++里,const修饰指针有以下三种情况 (1)指针常量:即指向常量的指针 const int *p或者int const *p const在*前,,可以这样理解它的功能,因为const在*前,所以p指向的这个int变量对于*p来说是const的,即不能通过*p改变这个变量的值,但是变量本身可以 ...
分类:
编程语言 时间:
2016-08-07 17:06:39
阅读次数:
199
http://note.youdao.com/yws/public/redirect/share?id=59efe4c935f3731fb0a59bf90fd7d91e&type=false [http://blog.csdn.net/beyond0525/article/details/74093 ...
分类:
其他好文 时间:
2016-07-07 17:14:44
阅读次数:
163
原文:C/C++杂记:NULL与0的区别、nullptr的来历 某些时候,我们需要将指针赋值为空指针,以防止野指针。 有人喜欢使用NULL作为空指针常量使用,例如:int* p = NULL;。 也有人直接使用0值作为空指针常量,例如:int* p = 0;。 前者可能觉得:NULL作为空指针常量, ...
分类:
编程语言 时间:
2016-06-13 22:02:51
阅读次数:
303
某些时候,我们需要将指针赋值为空指针,以防止野指针。 有人喜欢使用NULL作为空指针常量使用,例如:int* p = NULL;。 也有人直接使用0值作为空指针常量,例如:int* p = 0;。 前者可能觉得:NULL作为空指针常量,名字很形象,可读性较强。 后者可能觉得:NULL并不是C/C++ ...
分类:
编程语言 时间:
2016-06-08 14:04:43
阅读次数:
238