//
// 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;
}