Embedded WinCE-调试消息未正确打印字符串

Embedded WinCE-调试消息未正确打印字符串,embedded,windows-ce,Embedded,Windows Ce,我是初学者。我正在使用WinCE 6。在WCE控制台应用程序中,我添加了以下代码 char s[5]="abcd"; DEBUGMSG(1,(TEXT("%s\r\n"),s)); 我得到的输出是ac。我保留断点并观察s。它显示它包含abcd 当我尝试在Win32控制台应用程序中使用相同的代码逻辑时,它运行良好。我认为这是WinCE特有的东西 打印时请告诉我哪里出错。您的字符串可能需要是16位unicode字符。尝试将s的类型从char更改为wchar\u t。您的字符串可能需要是16位uni

我是初学者。我正在使用
WinCE 6
。在WCE控制台应用程序中,我添加了以下代码

char s[5]="abcd";
DEBUGMSG(1,(TEXT("%s\r\n"),s));
我得到的输出是
ac
。我保留断点并观察
s
。它显示它包含
abcd

当我尝试在Win32控制台应用程序中使用相同的代码逻辑时,它运行良好。我认为这是WinCE特有的东西


打印时请告诉我哪里出错。

您的字符串可能需要是16位unicode字符。尝试将s的类型从char更改为wchar\u t。

您的字符串可能需要是16位unicode字符。尝试将s的类型从char更改为wchar\u t。

您的字符串可能需要是16位unicode字符。尝试将s的类型从char更改为wchar\u t。

您的字符串可能需要是16位unicode字符。尝试将s的类型从char更改为wchar\t。

谢谢!成功了。但是,您能告诉我如何确定我们必须在哪里使用16位unicode字符吗?我目前正在使用设备模拟器。在使用OS API或TCHAR宏的任何地方都必须使用Unicode。谢谢@ctacke。但是,为什么
char
不是首选呢?WinCE(以及一般的Windows)的设计考虑到了语言和字体的国际化。16位unicode字符比8位字符更适合国际化。WinCE几乎没有ASCII(8位字符)API。它使用Unicode字符,这是定义Unicode时TCHAR宏扩展到的字符。谢谢!成功了。但是,您能告诉我如何确定我们必须在哪里使用16位unicode字符吗?我目前正在使用设备模拟器。在使用OS API或TCHAR宏的任何地方都必须使用Unicode。谢谢@ctacke。但是,为什么
char
不是首选呢?WinCE(以及一般的Windows)的设计考虑到了语言和字体的国际化。16位unicode字符比8位字符更适合国际化。WinCE几乎没有ASCII(8位字符)API。它使用Unicode字符,这是定义Unicode时TCHAR宏扩展到的字符。谢谢!成功了。但是,您能告诉我如何确定我们必须在哪里使用16位unicode字符吗?我目前正在使用设备模拟器。在使用OS API或TCHAR宏的任何地方都必须使用Unicode。谢谢@ctacke。但是,为什么
char
不是首选呢?WinCE(以及一般的Windows)的设计考虑到了语言和字体的国际化。16位unicode字符比8位字符更适合国际化。WinCE几乎没有ASCII(8位字符)API。它使用Unicode字符,这是定义Unicode时TCHAR宏扩展到的字符。谢谢!成功了。但是,您能告诉我如何确定我们必须在哪里使用16位unicode字符吗?我目前正在使用设备模拟器。在使用OS API或TCHAR宏的任何地方都必须使用Unicode。谢谢@ctacke。但是,为什么
char
不是首选呢?WinCE(以及一般的Windows)的设计考虑到了语言和字体的国际化。16位unicode字符比8位字符更适合国际化。WinCE几乎没有ASCII(8位字符)API。它使用Unicode字符,这是定义Unicode时TCHAR宏扩展到的字符。