gpt4 book ai didi

C++ DLL 特殊字符

转载 作者:行者123 更新时间:2023-11-28 02:47:00 28 4
gpt4 key购买 nike

我正在将用户生成的字符串从我的程序发送到我正在创建的 C++ DLL 函数中。它工作正常,直到我发送像“åäö”这样的字符串。我的函数看起来像这样:

export void showMessage(char* str) {
MessageBox(NULL, str, "DLL says", MB_OK);
}

当程序发送“åäö”时,会弹出一 strip 有“åäö”的消息。如何将其转换为“åäö”?需要什么图书馆?我正在为 DLL 使用 Code::Blocks。

最佳答案

您使用的字符似乎在扩展的 ASCII 表中(值大于 127),并且将取决于您使用的代码页,这是一种不太可移植的方法,因为运行您的代码的系统需要在程序本身之外进行环境更改。

而不是使用 MessageBox ,使用支持 Unicode 的版本,MessageBoxW , 并查找您指定的字符的 Unicode 编码。

引用资料


  1. 函数的 Unicode 版本和 ANSI 版本,访问时间 2014-06-06, <http://zone.ni.com/reference/en-XX/help/371361J-01/lvexcodeconcepts/unicode_ansi_version_functs/>
  2. ASCII 表查找,2014 年 6 月 6 日访问, <http://www.theasciicode.com.ar/extended-ascii-code/capital-letter-a-ring-uppercase-ascii-code-143.html>
  3. Unicode 查找,访问时间 2014-06-06, <http://unicodelookup.com/>

关于C++ DLL 特殊字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24089714/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com