【问题标题】:Copy unsigned char array复制无符号字符数组
【发布时间】:2011-05-29 06:39:03
【问题描述】:

将 unsigned char 数组复制到另一个数组的最佳方法是什么?

例如:

unsigned char q[1000];
unsigned char p[1000];

strcpy (q,&p);

上面的代码不起作用,它给我错误提示“无法将参数 1 从 unsigned char [1000] 转换为 char *”。

【问题讨论】:

  • 您确定您不是要标记这个问题c++ 而不是c?在 C 中使用 strcpyunsigned char 数组(只要它们是空终止的)应该没有问题。最坏的情况是默认关闭警告。
  • 不管是C还是C++,这里使用&操作符总是一个bug。

标签: c string strcpy unsigned-char


【解决方案1】:

如其名称所示,strcpy 适用于 C 字符串(无符号字符数组不是)。

你应该考虑memcpy

【讨论】:

  • 您可以将 unsigned char* 转换为 char*。
  • 您能否提供一个小示例,因为我在使用 memcpy 将 unsigned char 变量复制到 unsigned char 数组时遇到问题。 passing argument 2 of ‘memcpy’ makes pointer from integer without a cast [-Wint-conversion]
猜你喜欢
  • 2015-04-23
  • 2016-05-21
  • 1970-01-01
  • 2020-04-01
  • 2010-10-13
  • 2016-11-29
  • 1970-01-01
  • 1970-01-01
  • 2015-05-05
相关资源
最近更新 更多