在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
中,并打印出复制后的结果。