第29563题 单选题
以下关于C++中连续内存分配的说法,正确的是?

假设不存在自定义重载operator new/operator delete的情况,判断下列描述的正确性

A

使用new int[10]分配的连续内存,释放时可以直接调用free(),不会出现问题

B

malloc(10 * sizeof(int))和new int[10]功能完全等价,都能分配容纳10个int元素的连续堆内存,且都会将内存初始化为0

C

若自定义了类A的析构函数,使用new A[5]分配连续内存时,编译器会额外分配空间存储数组元素个数,用于delete[]时正确调用每个元素的析构函数

D

栈上声明的数组如int arr[10]不属于连续内存分配,只有堆上动态分配的内存才是连续的

程序运行统计
暂无判题统计
提交0次 正确率0.00%
答案解析