如何在 MacOS Objective C / C++ 中将 UUID 转换为 16 字节的 UInt8 数组
How to convert UUID into 16 bytes UInt8 array in MacOS Objective C / C++
我可以使用下面的代码获取 UUID 字符串..
CFUUIDRef theUUID = CFUUIDCreate(NULL);
CFStringRef string = CFUUIDCreateString(NULL, theUUID);
或者我可以使用下面的代码获取字节
CFUUIDRef theUUID = CFUUIDCreate(NULL);
CFUUIDBytes bytes = CFUUIDGetUUIDBytes(theUUID);
但我想制作一个 UInt8 数组,因为 UUID 是 16 个字节,所以输出数组应该是 16 个字节。
通过检查 CFUUIDBytes typedef 您可以了解如何访问每个字节:
CFUUIDRef theUUID = CFUUIDCreate(NULL);
CFUUIDBytes bytes = CFUUIDGetUUIDBytes(theUUID);
UInt8 rawData[16];
rawData[0] = bytes.byte0;
rawData[1] = bytes.byte1;
...
rawData[15] = bytes.byte15;
我可以使用下面的代码获取 UUID 字符串..
CFUUIDRef theUUID = CFUUIDCreate(NULL);
CFStringRef string = CFUUIDCreateString(NULL, theUUID);
或者我可以使用下面的代码获取字节
CFUUIDRef theUUID = CFUUIDCreate(NULL);
CFUUIDBytes bytes = CFUUIDGetUUIDBytes(theUUID);
但我想制作一个 UInt8 数组,因为 UUID 是 16 个字节,所以输出数组应该是 16 个字节。
通过检查 CFUUIDBytes typedef 您可以了解如何访问每个字节:
CFUUIDRef theUUID = CFUUIDCreate(NULL);
CFUUIDBytes bytes = CFUUIDGetUUIDBytes(theUUID);
UInt8 rawData[16];
rawData[0] = bytes.byte0;
rawData[1] = bytes.byte1;
...
rawData[15] = bytes.byte15;