c ++特殊字符的字符串编码

时间:2014-10-22 21:06:21

标签: c++ unicode utf

我正在创建自己的字体渲染系统,并使用位图字体。

每个字体都有自己的xml文件,其中包含代表ALT+???的整数 因此,如果我创建一个字符串l("abc");,它将显示为97 98 99

我用这段代码得到了整数代码:

int c = (unsigned char) text[i];
SubTexture* t = font.getLetter(to_wstring(c).c_str());

这一切都很顺利,直到我使用特殊的ALT+???代码为例:

l("♂♀♪♫☼");

它不会给我11 12 13 14 15但它会返回其他内容,具体取决于文件中使用的编码。我尝试使用所有不同的编码格式,但没有返回我正在寻找的整数。我希望有人可以帮我解决这个问题。也许有更好的方法然后将其转换为unsigned char

编辑:也许我应该注意我使用Visual Studio 2012并将'general-> Character Set'设置为:'使用Unicode字符集'

0 个答案:

没有答案