C语言——静态内存分配和动态内存分配

来源:互联网 发布:des算法代码 编辑:程序博客网 时间:2024/05/29 18:48

静态内存是直接变量等于什么什么。

malloc(int)返回值为内存地址,内存地址长度为4个字节(指针的长度),一般先申明一个指针不对他进行赋值,用malloc(int)返回值赋给这个指针,手动申请的内存用free(temp指针名)函数回收。数组第一次分配的内存还是不够用时,使用realloc(谁,长度多少)来扩展内存。

为变量申请动态内存:

int*    temp;

temp=malloc(sizeof(int));

为数组申请动态内存:

int  length;

scanf("&d",&length);

int*   iArray=malloc(length*4);

扩展动态内存的长度:

int   suppLength;

scanf("&d",&suppLength);

iArray=realloc(iArray,(length+suppLength)*4);

动态数组用到的技术:输出函数printf();输入函数scanf("占位符",内存地址);重新分配内存函数realloc();


0 0