AI智能推荐题库-试题通 AI智能整理导入题库-试题通
×
首页 题库中心 世界职业院校技能大赛汽车工程系选拔理论考试题库 题目详情
CAF88E2CAFE00001135B77F0847512A7
世界职业院校技能大赛汽车工程系选拔理论考试题库
1,000
单选题

如何创建一个动态数组?

A
int* arr = new int[10];
B
int arr = new int[10];
C
int arr[10] = new int;
D
int* arr[10] = new int;

答案解析

正确答案:A

解析:

好的,让我们来详细解析这道题。 ### 题目:如何创建一个动态数组? #### 选项分析: **A. `int* arr = new int[10];`** - **解释**:这是正确的创建动态数组的方法。`new int[10]` 在堆上分配了一个包含 10 个整数的数组,并返回指向该数组第一个元素的指针。`int* arr` 声明了一个指向整数的指针,将这个指针赋值为 `new int[10]` 返回的地址,从而实现了动态数组的创建。 - **示例**: ```cpp int* arr = new int[10]; for (int i = 0; i < 10; i++) { arr[i] = i * 2; // 初始化数组 } ``` **B. `int arr = new int[10];`** - **解释**:这是错误的。`int arr` 声明了一个整数变量,而不是一个指针。`new int[10]` 返回的是一个指针,不能直接赋值给一个整数变量。 - **示例**: ```cpp int arr = new int[10]; // 错误:类型不匹配 ``` **C. `int arr[10] = new int;`** - **解释**:这是错误的。`int arr[10]` 声明了一个固定大小的静态数组,而不是一个指针。`new int` 分配了一个单个整数的内存并返回一个指针,不能直接赋值给一个静态数组。 - **示例**: ```cpp int arr[10] = new int; // 错误:类型不匹配 ``` **D. `int* arr[10] = new int;`** - **解释**:这是错误的。`int* arr[10]` 声明了一个包含 10 个指针的数组,而不是一个指向数组的指针。`new int` 分配了一个单个整数的内存并返回一个指针,不能直接赋值给一个指针数组。 - **示例**: ```cpp int* arr[10] = new int; // 错误:类型不匹配 ``` ### 为什么选择 A 作为正确答案? - **A. `int* arr = new int[10];`** 是唯一一个正确地创建了动态数组的选项。它使用 `new` 关键字在堆上分配了一个包含 10 个整数的数组,并将返回的指针赋值给 `int* arr`,从而实现了动态数组的创建。 希望这些解释和示例能帮助你更好地理解这道题。如果你有任何其他问题或需要进一步的解释,请随时告诉我!
世界职业院校技能大赛汽车工程系选拔理论考试题库

扫码进入小程序
随时随地练习

关闭登录弹窗
专为自学备考人员打造
勾选图标
自助导入本地题库
勾选图标
多种刷题考试模式
勾选图标
本地离线答题搜题
勾选图标
扫码考试方便快捷
勾选图标
海量试题每日更新
波浪装饰图
欢迎登录试题通
可以使用以下方式扫码登陆
APP图标
使用APP登录
微信图标
使用微信登录
试题通小程序二维码
联系电话:
400-660-3606
试题通企业微信二维码