64,953
社区成员
发帖
与我相关
我的任务
分享
不同在哪里
回答你的几点: 1.一个wchar_t字符串,例如L"这是一个abc字符串",是否是UTF-16格式? 不是。是UNICODE。 2.而char字符串,例如"这是一个abc字符串",是否是GBK格式?是。也是ASCII 在工程的设置里面,“使用UNICODE字符集”或者“使用多字节字符集”也并没有直接说明到底是哪种编码。UNICODE字符集就是UNICODE编码,多字符集就是GBK编码(或ASCI) 3.听说Windows一般情况下并不默认使用UTF-8,那么以多字节字符集为例,是不是如果我用简体中文版Windows就是GBK,用日文版Windows就是JIS?是 有没有办法完全设置为UTF-8编码的代码文本,UTF-8编码的原生字符串?暂时我没有办法 若C++DLL导出函数的一个参数是const char*,C#对应参数是string,那么C++被传入的似乎是一个UTF-8编码的char字符串。若是把这字符串与VC原生的字符串混用就很尴尬。而且,若是我要给C#回传字符串,似乎也得是UTF8才行。 4.那么,VC有什么好办法处理UTF8字符串与原生字符串的相互转换呢?使用编码转换函数,例如MultiByteToWideChar