c++中怎么把不同的两个int*Array数组空间以及数据加在一起
时间: 2024-10-18 21:08:59 浏览: 18
C++数据结构实现之Array.zip
在C++中,如果你想将两个`int*`类型的数组合并,并且这两个数组的空间和数据确实可以相加,你需要确保它们具有相同的长度并且元素类型兼容。这里提供一个简单的示例:
```cpp
#include <iostream>
// 假设我们有两个int*指针
int* array1 = new int[5] {1, 2, 3, 4, 5}; // 第一个数组
int* array2 = new int[5] {6, 7, 8, 9, 10}; // 第二个数组
// 检查数组长度是否相同
if (sizeof(array1) == sizeof(array2)) {
// 创建一个新的数组来存放合并后的结果
int* combinedArray = new int[strlen(array1)]();
// 将两个数组的内容逐个添加到新的数组里
for (size_t i = 0; i < strlen(array1); ++i) {
combinedArray[i] = array1[i] + array2[i];
}
std::cout << "Combined Array: ";
for (const auto& num : combinedArray) {
std::cout << num << " ";
}
std::cout << std::endl;
// 别忘了释放原始数组以避免内存泄漏
delete[] array1;
delete[] array2;
delete[] combinedArray; // 注意:如果combinedArray未初始化,此处应改为nullptr
} else {
std::cerr << "Arrays have different lengths, cannot be merged." << std::endl;
}
阅读全文