W2CA可能会丢失数据,对

W2CA possible loss of data, right?

本文关键字:数据 W2CA      更新时间:2023-10-16

我正在工作一个传统的vc++ 6应用程序,正在尝试添加unicode支持,我有一个函数调用到rpc调用,期望和无符号字符,如果我使用W2CA()宏传递的字符串,我在假设有可能无法转换一些unicode字符串正确吗?例如,我认为T+G2将是一个问题。我只是问,因为我正试图决定是否写一个wchar_t版本会更好。

谢谢。

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

进入MSDN的一个很好的切入点:

lpDefaultChar[在]

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