代码点读机 / C / memcpy

memcpy C · 字符串函数

把一块内存的内容原样复制到另一块内存,源和目标不能重叠。

怎么用

memcpy(目标地址, 源地址, 字节数);

小例子

#include <stdio.h>
#include <string.h>
int main(void) {
    int a[3] = {1, 2, 3};
    int b[3];
    memcpy(b, a, sizeof(a));
    printf("%d %d %d", b[0], b[1], b[2]);
    return 0;
}

运行结果

输出 1 2 3

提醒:源和目标重叠时用 memmove,否则结果是未定义行为

官方文档:https://en.cppreference.com/w/c/string/byte/memcpy

在代码里遇到不认识的词?打开代码点读机,点一下就懂 → ← C全部词条