我正在使用一个包装std :: wstring的类,这段代码需要跨平台,是否有与windows函数相同的功能:MultiByteToWideChar& Linux上的WideCharToMultiByte?
谢谢。
答案 0 :(得分:15)
Linux等价物是iconv
函数iconv_open
,iconv
和iconv_close
(例如man 3 iconv_open
等文档)。对于跨平台应用程序,请使用ICU等专用库。这些库已经包含了自己的字符串类;没有必要包裹std::wstring
。
答案 1 :(得分:4)
mbtowc
和wctomb
是最直接的等价物,但请注意它们对与当前LC_CTYPE
区域设置相对应的多字节字符集进行操作(可以使用{{1}更改})。