C ++相当于JS .charCodeAt()

时间:2014-07-09 00:05:38

标签: c++ unicode glib

这可能非常明显和简单,我搜索它的尝试失败了,但是:使用glib你可以接受Unicode的用户输入,类似于我在这里粘贴这个的方式。我希望能够将其转换为其十六进制等效字符串,例如"亜".charCodeAt(0).toString(16)返回4e9c的方式。是否有这样一个标准函数来做这个,一个glib的方法,或其他一些库来做它?

1 个答案:

答案 0 :(得分:3)

使用glib,您可以使用gunichar获得单个Unicode代码点(g_utf8_get_char)。如果您需要非零偏移,只需将g_utf8_offset_to_pointer的返回值传递给g_utf8_get_char。要转换为字符串,您只需使用g_strdup_printf

因此,将您发布的代码翻译为:

g_strdup_printf ("%x", g_utf8_get_char (g_utf8_offset_to_pointer ("亜", 0)));