我在 python 中使用 uuid.bytes 方法创建了一个 16 字节的字符串,类似于: '我\x9e|T\r\xad@\x80\x986m\x00\x1c\x07z0' 例如,我正在传递给 C++ 文件。
有没有办法让我从 C++ 端读取它并重建 UUID?我打算将它读入一个 16 字符的数组,因为 char = 1 字节,但不确定从那里去哪里。
最佳答案
像这样的(未经测试)
char to_hex(int x)
{
return x < 10 ? x + '0' : (x - 10) + 'A';
}
char bytes[16];
...
std::string uuid;
for (int i = 0; i < 16; ++i)
{
uuid += to_hex((bytes[i] >> 4) & 0x0F);
uuid += to_hex(bytes[i] & 0x0F);
}
关于c++ - 在 C++ 中读取 python UUID 字节字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7153171/