c++ 数组如何申请
时间: 2024-10-25 13:09:42 浏览: 14
C++数组名扩展
在C++中,你可以使用`new[]`运算符动态地为数组分配内存,或者在定义时直接初始化。以下是两种方式:
1. **静态初始化**[^1]:
```cpp
int a[20]; // 使用默认构造函数为每个元素分配内存并初始化为0
// 或者更明确地指定初始值:
int b[20] = {0}; // 全部元素初始化为0
```
2. **动态分配** (适用于大小未知或者需要改变大小的情况):
```cpp
int* c = new int[20]; // 动态分配20个整数的空间
// 初始化为0:
for(int i = 0; i < 20; ++i)
c[i] = 0;
delete[] c; // 使用完毕后记得释放内存
// 对于字符数组,如字符串:
char str3[20]; // 如果不初始化,字符串会被自动填充'\0'
// 或者:
char* str4 = new char[20]; // 动态分配空间
memset(str4, 'A', sizeof(str4)); // 设置所有字符为'A'
std::string str5("Hello"); // 使用std::string可以避免手动管理内存
```
阅读全文