c++ utf32轉string

//原始字符串爲「***」,即3個星號,以UTF32格式存儲,內存格式以下:
char src[12] = { 0x2A, 0x00, 0x00, 0x00, 0x2A, 0x00, 0x00, 0x00, 0x2A, 0x00, 0x00, 0x00 };
//目的:將此內存串轉爲std::string格式,打印輸出爲「***」
std::u32string s32 = std::u32string((const char32_t*)src, 3);//UTF32爲一個字符佔4個字節,因此此處爲src.len/4 = 3
std::string s = std::wstring_convert<std::codecvt_utf8<char32_t>, char32_t >{}.to_bytes(s32);
std::cout << s << std::endl;
相關文章
相關標籤/搜索