gpt4 book ai didi

c - 使用 'memcpy' 函数

转载 作者:太空宇宙 更新时间:2023-11-04 05:19:37 24 4
gpt4 key购买 nike

要将数组b[]复制到数组a[]中,可以使用函数memcpy,如下所示; memcpy(a,b,sizeof(a)).
但是 memcpy 只是将字节从一个地方复制到另一个地方。
我的问题是:

1.How memcpy copies elements of array b[] into a[] by copying bytes?
2.Why sizeof(a) is supplied as arguments?

我是编程新手,所以请保持温和。

最佳答案

sizeof(a) 是数组 a 的总大小。例如,在

int a[3];
printf("%d", sizeof(a));

sizeof a 在大多数系统上将为 12(因为 int 通常是 4 个字节,而您有 3 个字节)。

memcpy 不知道 a 是一个数组。它只知道 a 指向某个内存地址,因此您必须告诉它要传递多少字节。大多数地方将memcpy的签名描述为:

void *memcpy(void *dst, const void *src, size_t nbytes)

关于c - 使用 'memcpy' 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17167956/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com