如何向数组的末尾插入一个数字?
时间: 2024-10-03 19:02:14 浏览: 30
php数组函数序列之array_unshift() 在数组开头插入一个或多个元素
在C++中,如果你想向数组的末尾插入一个元素,最直接的方法是在数组后面动态分配一个新的更大的数组,然后复制原数组的内容到新数组,最后将新元素添加到新数组的末尾。这是一个简单的示例:
```cpp
#include <iostream>
int main() {
// 原始数组
int arr[] = {1, 2, 3, 4};
// 数组大小
int size = sizeof(arr) / sizeof(arr[0]);
// 插入的数值
int num = 5;
// 动态分配新的数组,比原始数组大1
int* newArr = new int[size + 1];
// 复制原始数组的内容
for (int i = 0; i < size; ++i) {
newArr[i] = arr[i];
}
// 将新元素添加到新数组的末尾
newArr[size] = num;
// 显示新数组的内容
for (int i = 0; i <= size; ++i) {
std::cout << newArr[i] << " ";
}
std::cout << std::endl;
// 清理内存
delete[] newArr;
return 0;
}
```
在这个例子中,我们首先计算了原始数组的大小,然后创建了一个新的数组`newArr`,其长度比原数组大1。接着,我们遍历原数组并复制所有元素到新数组,最后将新数值插入新数组的末尾。
注意,这种方法会分配额外的内存,如果频繁进行这样的操作,可能会导致内存浪费。如果你知道数组的最终大小并且能预估出来,使用静态数组或动态数组(如std::vector)可能会更合适。
阅读全文