W2CA可能丢失数据,对吧?

时间:2011-11-16 15:36:31

标签: c++ unicode char wchar-t string-conversion

我正在使用一个试图添加unicode支持的传统VC ++ 6应用程序,我有一个调用rpc调用的函数,该函数需要和unsigned char,如果我在字符串上使用W2CA()宏传入,我是否正确假设有可能无法转换某些unicode字符串?例如,我相信我们的T + G2将是一个问题。我只是问,因为我试图决定写一个wchar_t版本是否会更好。

感谢。

1 个答案:

答案 0 :(得分:1)

是的,你不能指望Unicode转换为ANSI转换成功转换所有字符。您可以使用其他编码,例如UTF-8而不是ANSI。

问题的好entry point into MSDN

  

lpDefaultChar [in]

     

可选。指向角色不能使用的角色的指针   在指定的代码页中表示。该应用程序设置此   如果函数要使用系统默认值,则参数为NULL。至   获取系统默认字符,应用程序可以调用   GetCPInfo或GetCPInfoEx函数。