温馨提示×

c++中怎么用memcpy复制结构体数组

c++
小亿
300
2024-03-05 09:33:04
栏目: 编程语言

在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;
}

在上面的示例中,我们定义了一个包含idname成员的结构体MyStruct,然后创建了两个结构体数组arr1arr2。通过使用memcpy函数,我们将arr1中的数据复制到arr2中,并打印出复制后的结果。

0