- 1
- 0
- 约1.1万字
- 约 12页
- 2026-06-06 发布于河北
- 举报
阿里C语言面试题及详细答案
一、基础核心题(必考,考察基本功)
1.题目:说说C语言中malloc、calloc、realloc的区别,以及使用时必须注意的点?
详细答案:这三个都是动态内存分配函数,核心区别集中在初始化和内存调整上,实际开发中(比如阿里后台开发、嵌入式场景)经常用来分配缓冲区,踩坑点主要在内存泄漏和野指针。
1.区别:
-malloc:最基础,原型void*malloc(size_tsize),只分配指定大小(size字节)的内存,不初始化,内存里是随机的垃圾值;比如malloc(10),就分配10字节,里面的数据是乱的。
-calloc:原型void*calloc(size_tnmemb,size_tsize),分配nmemb个size字节的内存,并且会把所有字节初始化为0;比如calloc(5,2),分配10字节,每个字节都是0,适合需要初始化的数组、结构体场景。
-realloc:原型void*realloc(void*ptr,size_tsize),用于调整已分配内存的大小,ptr是之前malloc/calloc分配的指针;如果ptr为NULL,等同于malloc(size);如果新size比原内存大,会尝试在原内存后扩容,扩容失败则重新分配一块新内存,把原数据拷贝过去,同时释放原内存。
2.必须注意的点(阿里面试官常追
您可能关注的文档
最近下载
- 高一语文基础知识综合检测试题.doc VIP
- GBT-25975-2025建筑外墙外保温用岩棉制品.docx VIP
- 2025年甘肃卫生事业单位招聘考试(医疗卫生类/医学基础知识)历年参考题库含答案详解(5卷).docx VIP
- 电批(电动螺丝刀)使用操作规范精品.docx VIP
- 公共安全视频图像信息系统备案登记表(一).doc VIP
- 高一物理模块衔接训练试题.doc VIP
- 2025年甘肃卫生事业单位招聘考试(医疗卫生类/医学基础知识)历年参考题库含答案详解(5套卷).pdf VIP
- 实验训练4数据库系统维护.docx VIP
- 高一生物基础知识巩固试题.doc VIP
- 高一生物必修三单元检测试题.doc VIP
原创力文档

文档评论(0)