C ++中的Win32以中文显示...我做错了什么?

AVIK DUTTA

我是Win32和C ++的新手,我刚刚开始学习,然后在线学习了一个教程,并编写了以下代码:

#include <windows.h>

int WINAPI WinMain(HINSTANCE hThisInstance, HINSTANCE hPrevInstance,
                   LPSTR lpCmdLine, int nCmdShow)
{
MessageBox(NULL, (LPCWSTR) "Yes, I remember Adlestrop", (LPCWSTR) "A minimal windows program", MB_OK);
return 0;
}

但是,在编译并运行代码时,在消息框中文本是中文的……我知道,如果我不提及适当的类型,则输出可能是二进制或ASCCI或十六进制...。但是第一次原来是中国人..谁能告诉我我做错了什么?

迪特里希·埃普

您正在调用Unicode函数,但传入ASCII文本。

这个强制转换是错误的:

(LPCWSTR) "Yes, I remember Adlestrop"

而是使用L前缀,并且不要强制转换:

L"Yes, I remember Adlestrop"

解释

在字符串文字前加上前缀L表示该文字将使用UTF-16 1进行编码,并且具有类型wchar_t而不是的元素charWin32期望使用UTF-16,除非您#undef UNICODE这样做通常不是一个好主意。

TEXT()

您可能会看到使用TEXT()宏的代码

TEXT("Yes, I remember Adlestrop")

这是一种旧的处理方法,以保持与Unicode可用之前编写的代码的兼容性。除非要维护旧版应用程序,否则应避免使用该TEXT()宏,并保持UNICODE定义状态。UNICODE在最新版本的Visual Studio中默认情况下定义,因此通常无需自己定义。

脚注

1:在Windows上。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

来自Charles Petzold的纯C语言的MsgBoxPrintf(win32 api)提供中文输出...我做错了什么?

来自分类Dev

我在C ++中的OOP中做错了什么

来自分类Dev

在C中传递结构时,我做错了什么?

来自分类Dev

c中的链表(我在这里做错了什么?)

来自分类Dev

使用C#中的BinaryReader解析MNIST数据集时,我做错了什么?

来自分类Dev

使用C#中的BinaryReader解析MNIST数据集时,我做错了什么?

来自分类Dev

将字符串存储在C的char数组中-我做错了什么?

来自分类Dev

我在 c 中用 realloc() 做错了什么?

来自分类Dev

我在大学课程中做错了什么

来自分类Dev

我在divs表中做错了什么

来自分类Dev

我在这个 IF 中做错了什么?

来自分类Dev

如何从C中的struct打印,我不确定自己做错了什么,并从代码的各个部分不断收到各种错误?

来自分类Dev

我在我的 JS 代码中哪里做错了什么

来自分类Dev

编译器中的错误,还是我做错了什么?

来自分类Dev

在这个异步示例中我做错了什么吗?

来自分类Dev

我在这里做错了什么?~~ Python中的Tkinter

来自分类Dev

我在Angular2 EventEmitter中做错了什么?

来自分类Dev

我在Angular HTML模板中做错了什么?

来自分类Dev

Git中的提交次数错误?我做错了什么?

来自分类Dev

我在上传脚本中做错了什么

来自分类Dev

我在此SendInput代码段中做错了什么?

来自分类Dev

我在此javascript循环操作中做错了什么?

来自分类Dev

我在MySQL中的此循环做错了什么

来自分类Dev

我在这个bash脚本中做错了什么?

来自分类Dev

是MSVC 2010中的错误,还是我做错了什么?

来自分类Dev

从 ObservableCollection 中删除项目的问题,我做错了什么

来自分类Dev

我在这个 Monogame 课程中做错了什么?

来自分类Dev

我在 socket.io 配置中做错了什么?

来自分类Dev

我在这个 Angular HTTP 请求中做错了什么?

Related 相关文章

  1. 1

    来自Charles Petzold的纯C语言的MsgBoxPrintf(win32 api)提供中文输出...我做错了什么?

  2. 2

    我在C ++中的OOP中做错了什么

  3. 3

    在C中传递结构时,我做错了什么?

  4. 4

    c中的链表(我在这里做错了什么?)

  5. 5

    使用C#中的BinaryReader解析MNIST数据集时,我做错了什么?

  6. 6

    使用C#中的BinaryReader解析MNIST数据集时,我做错了什么?

  7. 7

    将字符串存储在C的char数组中-我做错了什么?

  8. 8

    我在 c 中用 realloc() 做错了什么?

  9. 9

    我在大学课程中做错了什么

  10. 10

    我在divs表中做错了什么

  11. 11

    我在这个 IF 中做错了什么?

  12. 12

    如何从C中的struct打印,我不确定自己做错了什么,并从代码的各个部分不断收到各种错误?

  13. 13

    我在我的 JS 代码中哪里做错了什么

  14. 14

    编译器中的错误,还是我做错了什么?

  15. 15

    在这个异步示例中我做错了什么吗?

  16. 16

    我在这里做错了什么?~~ Python中的Tkinter

  17. 17

    我在Angular2 EventEmitter中做错了什么?

  18. 18

    我在Angular HTML模板中做错了什么?

  19. 19

    Git中的提交次数错误?我做错了什么?

  20. 20

    我在上传脚本中做错了什么

  21. 21

    我在此SendInput代码段中做错了什么?

  22. 22

    我在此javascript循环操作中做错了什么?

  23. 23

    我在MySQL中的此循环做错了什么

  24. 24

    我在这个bash脚本中做错了什么?

  25. 25

    是MSVC 2010中的错误,还是我做错了什么?

  26. 26

    从 ObservableCollection 中删除项目的问题,我做错了什么

  27. 27

    我在这个 Monogame 课程中做错了什么?

  28. 28

    我在 socket.io 配置中做错了什么?

  29. 29

    我在这个 Angular HTTP 请求中做错了什么?

热门标签

归档