21xrx.com
2025-06-22 12:13:48 Sunday
文章检索 我的文章 写文章
初学者入门:C++数组合并
2023-07-03 11:53:48 深夜i     24     0
C++ 数组 合并 初学者 入门

数组合并是编程中经常用到的一项操作。C++提供了几种方法来合并数组,本文将介绍其中的一些方法,帮助初学者入门。

方法1:使用指针和数组下标遍历数组并将元素添加到新数组中。

int array1[] = 3;
int array2[] = 5;
int size1 = sizeof(array1) / sizeof(int);
int size2 = sizeof(array2) / sizeof(int);
int size3 = size1 + size2;
int array3[size3];
int index = 0;
for(int i = 0; i < size1; i++) {
  array3[index] = array1[i];
  index++;
}
for(int i = 0; i < size2; i++) {
  array3[index] = array2[i];
  index++;
}
for(int i = 0; i < size3; i++) {
  std::cout << array3[i] << " ";
}

方法2:使用std::copy()函数将一个数组的元素复制到一个新数组中,然后使用std::copy_n()函数将另一个数组的元素追加到这个新数组中。

#include <algorithm>
int array1[] = 1;
int array2[] = 4;
int size1 = sizeof(array1) / sizeof(int);
int size2 = sizeof(array2) / sizeof(int);
int size3 = size1 + size2;
int array3[size3];
std::copy(array1, array1 + size1, array3);
std::copy_n(array2, size2, array3 + size1);
for(int i = 0; i < size3; i++) {
  std::cout << array3[i] << " ";
}

方法3:使用std::vector类的insert()函数将一个数组的元素插入到新数组中。

#include <vector>
int array1[] = 1;
int array2[] = 6;
int size1 = sizeof(array1) / sizeof(int);
int size2 = sizeof(array2) / sizeof(int);
std::vector<int> v1(array1, array1 + size1);
std::vector<int> v2(array2, array2 + size2);
v1.insert(v1.end(), v2.begin(), v2.end());
for(int i = 0; i < v1.size(); i++) {
  std::cout << v1[i] << " ";
}

无论哪种方法,合并数组都非常简单。初学者可以根据自己的编程经验选择适合自己的方法。

  
  

评论区