动态存储空间

//
//  main.c
//  动态存储空间
//
//  Created by admin on 16/3/31.
//  Copyright © 2016年 jin. All rights reserved.
//

#include <stdio.h>
#include <stdlib.h>
/**
 堆:动态存储区,内存有程序员管理

 使用
 1.导入 stdlib.h 
 2.malloc(size_t) 向操作系统申请一块内存空间,如果操作成功,会返回存储空间的地址,否则反返回 NULL
 3.然后就可以对这块内存进行操作了
 4.使用完毕要释放掉这块存储空间

 */
int main(int argc, const char * argv[]) {
    int *pointer;
    pointer = malloc(sizeof(int));
    if(pointer != NULL)
    {
        *pointer = 520;
        printf("%i\n",*pointer);// 输出520
        // 释放内存,这一步只是告诉操作系统,这个存储空间可以释放掉了,真正释放的时间由操作系统决定
        free(pointer);
        printf("%i\n",*pointer);// 依然输出520
        // 清空指针
        pointer = NULL;
    }
    return 0;
}

标签: none

添加新评论