C++ 将两个 int 数组连接成一个更大的数组

标签 c++ arrays int concatenation

有没有办法在 C++ 中获取两个 int 数组

int * arr1;
int * arr2;
//pretend that in the lines below, we fill these two arrays with different
//int values

然后将它们组合成一个更大的数组,包含两个数组的值?

最佳答案

使用 std::copy在标题 <algorithm> 中定义. args 是指向输入第一个元素的指针、指向输入最后一个元素的指针和指向输出第一个元素的指针。 (https://en.cppreference.com/w/cpp/algorithm/copy)

int * result = new int[size1 + size2];
std::copy(arr1, arr1 + size1, result);
std::copy(arr2, arr2 + size2, result + size1);

只是建议,vector作为动态数组而不是指针会做得更好

关于C++ 将两个 int 数组连接成一个更大的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12791266/

相关文章:

c++ - 如何强制 clang 使用 llvm 汇编程序而不是系统?

c++ - 从数组中分配对象值的 vector ?

javascript - 使用循环在 Javascript 中创建 <tr>

c# - 在作为参数传递时防止混淆相同基类型的 ID

java - 将字符串 "1 + 2"转换为整数

c++ - Clang 预处理器从 C++ 文件中去除注释

c++ - 按模式分割 vector

arrays - mongodb 中的合并聚合

java - 在输入中为字符设置异常以退出仅接受整数且不停止的程序

c++ - FAST DMA 受益于在 C++ 中使用线程的 FPGA