C ++:将uint64_t转换为unsigned char数组

时间:2018-04-04 09:54:40

标签: c++ type-conversion

我需要将这个数字转换为例如:281474976710655到这样的unsigned char数组:

unsigned char value[6] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff };

我尝试使用memcpy和其他技术,但我没有得到正确的值,总是随机的十六进制......

我不是c ++开发人员,所以感谢您解释一下,如果可以。

非常感谢,再见!

1 个答案:

答案 0 :(得分:7)

uint64_t x=281474976710655
unsigned char value[sizeof(x)];
std::memcpy(value,&x,sizeof(x));