gpt4 book ai didi

c++ - 将 "wstring"转换为 "const UInt8 *"

转载 作者:太空宇宙 更新时间:2023-11-04 11:28:58 25 4
gpt4 key购买 nike

我必须将 wstring 转换为 (UInt8 *)。另外,我有这个字符串:

    wstring str;

你能帮我转换一下吗?我试过这段代码,但它不起作用:

    wstring str;
uint8 *buf = reinterpret_cast<uint8>(str);
CFStringRef CFStringCreateWithBytes (CFAllocatorRef alloc,
const UInt8 *buf,
CFIndex sizeOfBuf,
CFStringEncoding encoding,
Boolean isExternalRepresentation);

最佳答案

wchar_t 在 OSX 上是 32 位的,因此 std::wstring 可以保存 UTF-32 编码的字符串:

std::wstring str = ...;
CFStringRef encoded = CFStringCreateWithBytes(
kCFAllocatorDefault,
reinterpret_cast<uint8*>(str.c_str()),
str.size() * sizeof(wchar_t),
kCFStringEncodingUTF32LE,
false);

关于c++ - 将 "wstring"转换为 "const UInt8 *",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25526420/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com