【问题标题】:MSVC Unicode not displaying EnglishMSVC Unicode 不显示英文
【发布时间】:2009-11-22 20:30:56
【问题描述】:

我的问题是我用 MSVC express 编写的 Unicode C++ 程序以亚洲字体显示所有字符串。什么可能导致这种情况以及如何以英文显示字符串?

【问题讨论】:

  • 什么操作系统版本?当你运行它时,你在哪个地区?
  • 更多信息:Windows Vista,MSVC Expres 2008。它是一个 DirectX 项目。我进行了研究,发现使用 L"some text" 字符串文字转换我的文本以英文显示。但是,当我转换一个变量(例如 (LPCWSTR)myString)时,它会编译并以特定的日语显示。

标签: c++ unicode asianfonts


【解决方案1】:

我已经解决了这个问题。当转换除 WCHAR* 以外的任何内容时,编译器会以不希望的方式解释它(显示日文字体而不是英文)。将使用的字符串初始化为 WCHAR* 不仅被编译器接受,而且给出了所需的英文字体结果。

我不知道这将如何适用于其他人的问题,但它已经解决了我的问题。感谢 bmargulies 和 AraK 的回复(当你道歉时我不在)。

【讨论】:

  • 这样的转换是告诉编译器“我知道我在做什么”,而不是“猜猜我想要什么”。如果您需要WCHAR*,请将字符串提供为WCHAR[],而不是intfloatchar[]
猜你喜欢
  • 2011-12-30
  • 2016-04-05
  • 2010-09-17
  • 1970-01-01
  • 2012-12-19
  • 2015-10-25
  • 2018-06-12
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多