栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C语言中内存相关的事(持续更新)

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C语言中内存相关的事(持续更新)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

关于内存分配的函数关于动态内存和静态内存


关于内存分配的函数

malloc函数的使用

int *p = (int *)malloc(4);
int *p = malloc(sizeof(int));	//这样写比较好,不受系统影响
int *p = malloc(sizeof*p);	//这样写也是可以的

free函数的使用

free(p)

需要注意的是,释放并不是指清空内存空间,而是指将该内存空间标记为“可用”状态,使操作系统在分配内存时可以将它重新分配给其他变量使用,这个时候p指向的仍然是那块内存空间,所以安全起见,释放完内存之后应当立即将其设为NULL。
calloc的使用

void *calloc(size_t nitems, size_t size)	//元素个数,元素大小
int * a = calloc(10, sizeof(int));	//相当于长度为10的int数组

这个函数同时会自动将内存置0,当分配大块内存的时候,calloc比较快。

关于动态内存和静态内存

所谓动态和静态就是指内存的分配方式。动态内存是指在堆上分配的内存,而静态内存是指在栈上分配的内存。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/768695.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号