******************** 野指针和内存泄露 ********************

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------



//  野指针和内存泄露

//

//  Created by 李佳乐 on 15-3-19.

//  Copyright (c) 2015 李佳乐. All rights reserved.

//



#include <stdio.h>

#include <stdlib.h>


int main(int argc, const char * argv[]) {

    

    

    //野指针的第一种形式:

    //1)定义了一个指针变量,没有初始化

    

    //   ***********************   防止出现野指针的办法:给它赋值NULL

    

    //2p指向的空间已经被释放了,此时p也是一个野指针

    

    int *p;  //没有被初始化,这是野指针

    //操作了野指针

    //    *p = 10;

    

    //在堆区分配的内存

    //堆区的内存空间由程序员负责申请和回收内存空间

    p = (int*) malloc(4);

    *p = 10;

    printf("%d\n",*p);

    

    

    //内存泄露:我们在堆区申请了空间,直到程序执行结束,这个空间都没有被释放

    //         此时我们说 堆区的内存空间泄露了

    

    //如何防止内存泄露?

    //在我们不需要用到这个空间的时候,我们给他释放掉

    

    

    // ***********************   free(手动申请的空间的首地址)

    

    

    free(p);

    

    

    //p = NULL;

    //    //野指针操作

    //*p  = 100;

    //printf("%d\n",*p);

    return 0;

}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值