mac版:
//
// main.m
// test
//
// Created by haidrgon on 2018/12/20.
// Copyright © 2018 haidrgon. All rights reserved.
//
#import
#include
#include
#include
#import
#import
using namespace std;
int main(int argc, const char * argv[]) {
@autoreleasepool {
// insert code here...
wchar_t* temp=L"abc123你我他";
wstring wstr = temp;
wprintf(L"%sn", wstr.c_str());
// wcout.imbue(locale("chs"));
wcout< NSData *data = [NSData dataWithBytes:wstr.data() length:sizeof(wchar_t) * wstr.size()]; NSString *str = [[NSString alloc] initWithdata:data encoding:NSUTF32LittleEndianStringEncoding]; NSLog(@"str %@", str); NSLog(@"Hello, World!"); cout<<[str UTF8String]< } return 0; } wstring问题 linux版 #include #include #include using namespace std; int main() { wstring wstr=L"世界你好!"; locale loc("zh_CN.UTF-8"); locale::global(loc); wcout< return 0; } wstring问题 win版: printf("argv[1]%sn", argv[1]); int len = MultiByteToWideChar(CP_ACP, 0, argv[1], strlen(argv[1]), NULL, 0); m_wchar = new wchar_t[len + 1]; char2wchar(argv[1], m_wchar); setlocale(LC_ALL, "chs");//#include wprintf(L"argv[1]%sn", wstring(m_wchar).c_str()); wprintf(L"argv[1]%sn",m_wchar); printf("argv[1]%wsn", m_wchar); wstring问题 ©著作权归作者所有:来自51CTO博客作者土匪猿的原创作品,如需转载,请注明出处,否则将追究法律责任



