第29348题 单选题
关于以下C++代码中字符数组与指针的内存分配,下列说法正确的是?

阅读以下C++代码片段:

#include <iostream>
#include <cstring>
using namespace std;

int main() {
    char a[] = "hello";
    char* b = new char[6];
    strcpy(b, "world");
    const char* c = "cpp";
    return 0;
}

下列关于这段代码的内存分配描述正确的是?

A

数组a的内存分配在堆上,大小为5字节

B

指针b指向的内存区域在栈上,使用完毕后无需手动释放

C

指针c指向的字符串字面量存储在静态只读存储区,无法通过c修改其内容

D

使用strlen(a)会得到6,因为数组a包含结束符'\0'

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