21xrx.com
2025-04-16 23:43:25 Wednesday
文章检索 我的文章 写文章
C++如何合并数组?
2023-07-05 13:48:30 深夜i     25     0
C++ 合并数组 方法 例程 代码

C++是一种高级编程语言,提供了许多方便的函数和工具来处理数组。当处理数组时,合并两个或更多数组是一项常见任务。在C++中,有几种方法可以合并数组。下面将介绍其中的一些方法。

1.使用vector容器

C++标准库中提供了一个名为vector的容器类,它可以方便地合并数组。vector容器提供了一个insert()函数,可以将一个数组中的所有元素插入另一个数组中。下面是一个使用vector容器合并数组的示例代码:

#include <vector>
#include <iostream>
int main()
{
  int arr1[] = 2;
  int arr2[] = 5;
  int len1 = sizeof(arr1) / sizeof(arr1[0]);
  int len2 = sizeof(arr2) / sizeof(arr2[0]);
  std::vector<int> vec1(arr1, arr1 + len1);
  std::vector<int> vec2(arr2, arr2 + len2);
  vec1.insert(vec1.end(), vec2.begin(), vec2.end());
  for (int i = 0; i < vec1.size(); i++)
  {
    std::cout << vec1[i] << " ";
  }
  std::cout << std::endl;
  return 0;
}

2.使用数组下标

另一种合并数组的方法是使用数组下标。这个方法需要自己手动创建新数组,并对原始数组进行遍历,把它们的元素移动到新数组中。下面是一个使用数组下标合并数组的示例代码:

#include <iostream>
int main()
{
  int arr1[] = 1;
  int arr2[] = 6;
  int len1 = sizeof(arr1) / sizeof(arr1[0]);
  int len2 = sizeof(arr2) / sizeof(arr2[0]);
  int lenResult = len1 + len2;
  int result[lenResult];
  int index = 0;
  for (int i = 0; i < len1; i++)
  {
    result[index] = arr1[i];
    index++;
  }
  for (int i = 0; i < len2; i++)
  {
    result[index] = arr2[i];
    index++;
  }
  for (int i = 0; i < lenResult; i++)
  {
    std::cout << result[i] << " ";
  }
  std::cout << std::endl;
  return 0;
}

以上两种方法都可以方便地合并数组,具体使用哪种方法取决于具体情况和个人喜好。无论哪种方法,都需要先计算两个数组的长度,然后使用相应的函数或方法将它们合并到一个新数组中。如果您想考虑更具普遍性的情况,也可以使用类似的方法。

  
  

评论区

请求出错了