在C++中,可以使用memcpy函数来复制结构体数组。以下是一个示例代码:
#include <iostream>
#include <cstring>
struct MyStruct {
int id;
char name[20];
};
int main() {
MyStruct arr1[3] = {{1, "Alice"}, {2, "Bob"}, {3, "Charlie"}};
MyStruct arr2[3];
// 使用memcpy复制结构体数组
memcpy(arr2, arr1, sizeof(arr1));
// 打印复制后的数组
for (int i = 0; i < 3; i++) {
std::cout << "id: " << arr2[i].id << ", name: " << arr2[i].name << std::endl;
}
return 0;
}
在上面的示例中,我们定义了一个包含id和name成员的结构体MyStruct,然后创建了两个结构体数组arr1和arr2。通过使用memcpy函数,我们将arr1中的数据复制到arr2中,并打印出复制后的结果。