C/C++——指针

未初始化的指针可以指向任何地方,空指针表示未分配、不指向任何有意义的地方,
定义指针变量,一定要记得指针初始化,分配内存,最后要释放指针,以防内存泄漏
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/linyilong/p/5165731.html

    https://www.cnblogs.com/stoneJin/archive/2011/09/21/2183684.html

    https://blog.csdn.net/toonny1985/article/details/4489777

原文链接: https://www.cnblogs.com/dhj183790752/p/13321587.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍;

也有高质量的技术群,里面有嵌入式、搜广推等BAT大佬

    C/C++——指针

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/366943

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年3月2日 下午5:12
下一篇 2023年3月2日 下午5:14

相关推荐