野指针和内存泄漏

  1. 野指针
    野指针是指指针变量在声明后未对其地址进行初始化,因为指针在声明后,它的地址都是随机指向的,如果不初始化成正确的值,会造成野指针的出现。
    还有就是在free或delete之后,没有对指针变量赋值为NULL。因为free或delete只是删除了这个指针所指向的内存,但是指针变量本身是存在的。
    通常判断一个指针是否合法,都是使用if语句测试该指针是否为NULL。
    规避:

    1. 在声明指针变量后,进行初始化;
    2. 在free或delete后,将指针赋值为NULL(或理解为return NULL);
  2. 内存泄漏
    引用百度百科

    内存泄漏(Memory Leak)是指程序中己动态分配的堆内存由于某种原因程序未释放或无法释放,造成系统内存的浪费,导致程序运行速度减慢甚至系统崩溃等严重后果。

    通常是由于我们在malloc一段地址空间后,在使用完或程序结束后,未对申请的空间进行释放。
    规避:

    1. malloc和free都是成对出现的。注意检查。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值