在Mac OS X上有没有一种优雅的方法可以将'const wchar *'转换为'const char *'?
吉
答案 0 :(得分:2)
使用wcstombs
:
size_t wcstombs(char * dest,const wchar_t * src,size_t n);
确保正确设置了区域设置。
答案 1 :(得分:0)
很难想象为什么会在OS X上使用wchar_t,但是这里是如何在标准C ++中完成的:
#include <codecvt>
int main() {
std::wstring_convert<std::codecvt_utf8<wchar_t>,wchar_t> convert;
wchar_t const *ws = L"Steve Nash";
std::string s = convert.to_bytes(ws);
char const *cs = s.c_str();
}