博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C/C++——指针
阅读量:4615 次
发布时间:2019-06-09

本文共 569 字,大约阅读时间需要 1 分钟。

未初始化的指针可以指向任何地方,空指针表示未分配、不指向任何有意义的地方,

定义指针变量,一定要记得指针初始化,分配内存,最后要释放指针,以防内存泄漏
int *p;
p=(int *)malloc(sizeof(int));//分配不成功将返回空指针
free(p);
p=NULL;//指针释放后,是释放指向的那块内存,但是该指针还是没有变,所以free后,该指针指向了垃圾内存,需要把指针置为空指针,不指向任何值。
#define NULL 0 空指针表示不指向任何地方,(可以理解成指向地址为NULL,但是这个地址是不会允许有任何操作的,所以空指针是不指向任何实际的对象或函数空指针不指向任何实际的对象或函数,反过来说对象或函数的指针也不可能为空指针。)
赋值为空指针,是让它在没有被使用之前,不让它乱指,但是在具体使用的时候还是得先给他个具体的地址,指向一个具体的内存空间
viod *P 无类型指针 表示不指定类型的指针,可以指向任何类型
野指针:指向垃圾(不可用)内存的指针,所以未初始化指针、free后未置NULL指针、指针操作超出变量作用范围都将产生野指针

 指针的释放是释放指针指向堆中的内存区域

reference:

    

    

    

转载于:https://www.cnblogs.com/bingoc/p/10721754.html

你可能感兴趣的文章
jQuery点击收缩展开滑动显示内容竖直手风琴代码
查看>>
PHP 后台定时循环刷新某个页面 屏蔽apache意外停止
查看>>
线程池+协程+gevent模块
查看>>
小兔子繁殖的问题
查看>>
浏览器端Less
查看>>
稀疏表(ST / Sparse Table)
查看>>
机会是创造出来的,绝不是等来的
查看>>
负载测试培训
查看>>
c++11并发机制
查看>>
#import与@class的区别
查看>>
树莓派如何便捷的使用pi4j
查看>>
MySQL 中的索引
查看>>
CxImage Practice
查看>>
12个优秀的云计算操作系统
查看>>
ubuntu下使用罗技Unifying
查看>>
AJAX应用的五个步骤
查看>>
js导读,js引入,js选择器,事件,操作页面文档,计算后样式,数据类型
查看>>
鼠标经过时整行变色
查看>>
bzoj 2906: 颜色
查看>>
HDU6368
查看>>