c++交换两个数组的元素
时间: 2024-12-20 22:24:19 浏览: 6
c++用指针交换数组的实例讲解
在C++中,交换两个数组的元素可以使用多种方法,这里提供一种常见的直接遍历交换元素的方式:
```cpp
#include <iostream>
// 函数模板用于交换两个数组的元素
template<typename T>
void swapArrayElements(T arr1[], int size1, T arr2[], int size2) {
if (size1 != size2) {
std::cout << "Error: Arrays must have the same size to be swapped." << std::endl;
return;
}
for (int i = 0; i < size1; ++i) {
// 使用类型推导自动将arr1[i]和arr2[i]视为T类型的值进行交换
std::swap(arr1[i], arr2[i]);
}
}
int main() {
int array1[] = {1, 2, 3};
int array2[] = {4, 5, 6};
int size = sizeof(array1) / sizeof(array1[0]); // 获取数组长度
swapArrayElements(array1, size, array2, size);
// 打印交换后的结果
for (int i = 0; i < size; ++i) {
std::cout << "array1[" << i << "] = " << array1[i] << ", array2[" << i << "] = " << array2[i] << std::endl;
}
return 0;
}
```
在这个例子中,`swapArrayElements`函数接收两个数组、它们的大小以及数组元素类型。如果数组大小不一致,它会打印错误信息并提前返回。然后通过一个for循环逐个元素交换。
阅读全文