《指针常量,常指针,指向常量的常指针》由会员分享,可在线阅读,更多相关《指针常量,常指针,指向常量的常指针(2页珍藏版)》请在金锄头文库上搜索。
1、指针常量,常指针,指向常量的常指针1.常量指针(常指针)int* const p特点是指针指向的数值可以改变,然而指针所保存的地址却不可以改变。#include using namespace std;void main()int a = 10;int const *p = coutaendl;cout*pendl;int b = 20;我们可以改变指针变量 p 所指向的内容,而不能改变 p 的地址空间,如 添加上 p = 我们就会发现编译错误!2.指针常量const int*p特点是指针所保存的地址可以改变,然而指针所指向的值却不可以改变。同理,当添加*p = b 时,会发生编译错误!3.指
2、向常量的常指针const int const*p特点是指针所保存的地址不可变,指针所指向的数值也不可变4.空指针顾名思义,就是保存地址为空的指针int *p=0; /此时的指针 p 就是一个空指针5.内存泄露int *p=new int;p=new int;delete p; /用 delete 来释放刚刚申请的那块内存区域,注意此时指针 p 还是可能依旧指向的这块区域(注意可能二字) 。这样就会有内存丢失,也就是所谓的内存泄漏。因为第一行我们在堆中申请了一块 int 型的区域,并且用指针 p 指向该空间。但是紧接着我们又在堆中申请了一块 int 型的区域,用 p 指向了该空间。那么先前申请的那块区域就无法访问了,但同时这块无法访问的区域没有被删除。所以就造成了内存泄漏。6.迷途指针int *p=new int; /在堆中申请一块区域,用 p 指向这块区域所以此时指针 p 的指向地址具有不确定性,故而称作迷途指针,避免的方法是将指针初始化为空指针。