1. 程式人生 > >ANSI和Unicode互相轉換

ANSI和Unicode互相轉換

轉載自:http://blog.csdn.net/k346k346/article/details/50082705
#include <windows.h>
#include <iostream>
using namespace std;

int main(){
    wchar_t* ws=L"測試字串";
    char* ss="ABC我們";
    int bufSize=WideCharToMultiByte(CP_ACP,NULL,ws,-1,NULL,0,NULL,FALSE);
    cout<<bufSize<<endl;
    char
*sp=new char[bufSize]; WideCharToMultiByte(CP_ACP,NULL,ws,-1,sp,bufSize,NULL,FALSE); cout<<sp<<endl; delete[] sp; bufSize=MultiByteToWideChar(CP_ACP,0,ss,-1,NULL,0); cout<<bufSize<<endl; wchar_t* wp=new wchar_t[bufSize]; MultiByteToWideChar(CP_ACP,0,ss,-1
,wp,bufSize); wcout.imbue(locale("chs")); } 程式輸出結果: 11 測試字串 6 ABC我們