c++ - 为什么我的简单 C++ GUI 应用程序显示中文消息框?

标签 c++ winapi

哦,至于整个(LPCWSTR)类型转换的东西:除非我把它们放进去,否则它不会编译。它给了我这个错误信息:

Error 1 error C2664: 'MessageBoxW' : cannot convert parameter 2 from 'const char [22]' to 'LPCWSTR'

最佳答案

在您的字符串前面加上一个 L 使其成为一个宽字符串。 L"再见残酷的世界"

那么你就不需要强制转换了。

您还可以使用 TEXT("") 宏,它会根据您的配置设置创建一个 unicode 字符串或 ascii 字符串。

您看到中文的原因是 MessageBox 将 ascii 字符串解释为 unicode。

关于c++ - 为什么我的简单 C++ GUI 应用程序显示中文消息框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2079828/

相关文章:

c++ - c++中使用引用重命名变量

C++ 标记化

c++ - Win32 API 防止待机

c++ - 使用 CreateService winapi 创建 Windows 服务时如何设置描述

c++ - 函数调用中的 WriteConsole 访问冲突但不是来自 main()

c# - 优雅的 Win32 无窗口进程终止

c# - 如何获取 WinForm 应用程序中最顶层窗体的句柄?

C++ 套接字编程 - 查找客户端机器 IP、TrueIP 和绑定(bind)端口

c++ - 构造 chrono::time_point

c++ - 可以指定重复的 C++ 类作用域吗?