单选题
“new”关键字用于什么?
A
声明变量
B
创建数组
C
动态分配内存
D
释放内存
答案解析
正确答案:C
解析:
好的,让我们来详细解析这道题目。
题目:`"new"`关键字用于什么?
选项:
A. 声明变量
B. 创建数组
C. 动态分配内存
D. 释放内存
### 解析:
1. **选项 A: 声明变量**
- **解释**:声明变量是指在程序中定义一个变量,给它一个名称和数据类型。例如,在 C++ 中,你可以这样声明一个变量:
```cpp
int x;
```
- **分析**:`new` 关键字并不用于声明变量。声明变量通常使用数据类型直接声明,如 `int x;` 或 `float y;`。
2. **选项 B: 创建数组**
- **解释**:创建数组是指在程序中定义一个包含多个相同类型元素的集合。例如,在 C++ 中,你可以这样创建一个数组:
```cpp
int arr[5];
```
- **分析**:虽然 `new` 可以用来动态创建数组,但它的主要功能是动态分配内存。例如:
```cpp
int* arr = new int[5];
```
这里 `new` 用于动态分配内存来存储一个包含 5 个整数的数组。因此,这个选项不完全准确。
3. **选项 C: 动态分配内存**
- **解释**:动态分配内存是指在程序运行时根据需要分配内存空间。这通常用于创建对象或数组,这些对象或数组的大小在编译时不确定,需要在运行时确定。
- **分析**:`new` 关键字的主要用途就是动态分配内存。例如:
```cpp
int* p = new int; // 分配一个整数的内存
int* arr = new int[5]; // 分配一个包含 5 个整数的数组的内存
```
这些例子都展示了 `new` 用于动态分配内存。
4. **选项 D: 释放内存**
- **解释**:释放内存是指在程序中将不再使用的内存空间归还给系统,以便其他部分可以使用这些内存。例如,在 C++ 中,你可以这样释放内存:
```cpp
delete p; // 释放单个对象的内存
delete[] arr; // 释放数组的内存
```
- **分析**:`new` 用于分配内存,而 `delete` 用于释放内存。因此,这个选项是错误的。
### 结论:
正确答案是 **C. 动态分配内存**。`new` 关键字的主要用途是在程序运行时动态分配内存,无论是创建单个对象还是数组。
