c++中如何给数组输入初始值
时间: 2024-10-07 19:04:30 浏览: 40
在 C++ 中,你可以通过多种方式为数组分配初始值。这里列举几种常见的方式:
1. **静态初始化**:
对于整型数组,可以使用花括号 `{}` 来指定常量的初始值,例如:
```cpp
int myArray[5] = {0, 1, 2, 3, 4}; // 数组长度为5,每个元素都是从0开始递增
```
2. **直接赋值**:
对于动态创建的数组,如 `std::vector` 或 `new[]` 运算符,可以先声明数组,然后逐个赋值:
```cpp
int n;
std::cin >> n; // 获取用户输入的元素个数
int* arr = new int[n]; // 动态分配内存
for (int i = 0; i < n; ++i) {
arr[i] = i * i; // 零基础索引,数组下标从0开始
}
```
3. **构造函数**:
如果数组中的元素有一个公共的构造函数,可以直接传入初始值列表:
```cpp
Person people[3] = {Person("Alice", 25), Person("Bob", 30), Person("Charlie", 35)};
```
其中 `Person` 是一个包含姓名和年龄的类。
4. **生成器表达式或范围-for循环**:
使用 C++17 及以上版本,可以用生成器表达式为数组赋值,尤其适用于连续的数值序列:
```cpp
int count = 5;
int arr[count] = {i for i in range(count)};
```
记得在使用完动态分配的内存后,记得调用 `delete[] arr` 释放内存,避免内存泄漏。
阅读全文