【发布时间】:2020-04-21 18:04:38
【问题描述】:
我有一些 C++ 代码在这些行中使用 std::copy
std::copy(array1, array1 + 4, arrayV + i);
std::copy(array2, array2 + 4, arrayV + i + 4);
在展开循环中。所有数组都是uint8_t*。
如何将这些行转换为 C 中产生相同结果的等效代码?
【问题讨论】:
-
memcpy符合要求吗? -
我尝试在这种情况下使用 memcpy memcpy(array1, array1+4, arrayV+i);但由于 array1 和 array2 是 const uint8_t * 我得到一个错误。此外,我在 arrayV + i 部分也遇到了错误。但是代码在c ++中可以正常工作,但我不知道如何正确地将其适应代码c。 @sergeya
-
我强烈建议您先阅读some documentation for
memcpy,然后再向它提出论据。如果您不知道如何正确使用它,那么很少有东西可以正常工作。