gpt4 book ai didi

c - c中2个无符号字符*之间的memcpy

转载 作者:行者123 更新时间:2023-12-02 06:38:48 28 4
gpt4 key购买 nike

如何复制使用 memcpy 与两个指针 a, b 都是 unsigned char *:

  1. a 指向充满数据的内存(无符号字符)
  2. b 甚至没有分配

如何使用 memcpya 复制到 bmemcpy的第三个参数需要a所指向的内存大小,以字节为单位;如何获得?

最佳答案

unsigned char* b = (unsigned char*)malloc(length_of_a);
memcpy(b, a, length_of_a);

当然,我不能告诉你如何得到“a”的长度。你不能可靠地调用 memcpy 如果你不知道它或者没有它作为变量。否则,任何调用 memcpy 的尝试本质上都是不安全的。

你真正想做什么?

“a”也完全有可能根本不是一个数组。在这种情况下,您不需要 memcpy:

char b = '\0';
if (a != NULL)
{
b = *a;
}

关于c - c中2个无符号字符*之间的memcpy,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12229343/

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