malloc()动态内存分配

假设动态构造一个int型数组:
int *p = (int *)malloc(int len);

1.malloc只有一个int型的形参,表示要求系统分配的字节数
2.malloc函数的功能是请求系统len个字节的内存空间,如果请求分配成功,则返回第一个字节的地址;如果分配不成功,则返回NULL
3.malloc函数只能返回第一个字节的地址(俗称干地址),因此需要把这个无实际意义的第一个字节的地址转化为一个有实际意义的地址。因此必须进行强制类型转换,告诉 编译器返回的到底是什么类型的地址。

通过malloc()手动动态分配的内存,必须通过free()手动释放。

A aa = new A();
类似于:
A *pa = (A *)malloc(sizeof(A));

跨函数使用内存,只能通过动态分配内存来实现。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • (JG-2014-08-20)(前半部分经过网上多篇文章对比整理)(后半部分根据ExceptionalCpp、C+...
    JasonGao阅读 10,922评论 2 23
  • C语言中内存分配 在任何程序设计环境及语言中,内存管理都十分重要。在目前的计算机系统或嵌入式系统中,内存资源仍然是...
    一生信仰阅读 4,940评论 0 2
  • __block和__weak修饰符的区别其实是挺明显的:1.__block不管是ARC还是MRC模式下都可以使用,...
    LZM轮回阅读 8,745评论 0 6
  • iOS面试小贴士 ———————————————回答好下面的足够了------------------------...
    不言不爱阅读 6,435评论 0 7
  • 父母很爱自己的孩子,而亲子沟通是维护家庭关系的一个重要桥梁。但很多父母会发现随着孩子的长大,和父母的距离逐渐拉远,...
    蓝色水晶1130阅读 1,873评论 0 4

友情链接更多精彩内容