【问题标题】:Is there a function that returns the UNICODE value of a character? (C++)是否有返回字符的 UNICODE 值的函数? (C++)
【发布时间】:2013-07-15 08:13:57
【问题描述】:

我需要一个返回字符的 UNICODE 值的函数。
在java String.valueOf('а'); 是有效的。
c++中有等价的功能吗?

【问题讨论】:

  • 无论如何,一个 UNICODE 字符(可能)只是一个 uint16_t
  • @RogerRowland 那么 utf 32 呢?还有 utf8,不完全是 uint16_t
  • @Waldermort 大声笑,当我完成打字时,我想知道谁会打开那罐蠕虫!
  • @RogerRowland 哈哈。相信我,过去几天里所有这些 un​​icode、语言环境和诸如此类的东西一直在我脑海中。
  • 错误...定义“字符”。一个unicode字符就是一个unicode字符,它的值就是它本身。除非你的意思是“Unicode mnemonic”,比如“LATIN CAPITAL LETTER A”。

标签: c++ unicode char value-of


【解决方案1】:

这个问题在 C++ 上下文中确实没有意义。 您必须定义 Unicode 值的含义(其中 编码格式)——Java 坚持使用 UTF-16,但可以说是 UTF-8 或 UTF-32 更有意义。

此外,尽管名称如此,Java 函数确实没有改变或 重新解释任何价值观。它与 C++ 中的 wstring( 1, L'a' ) 完全相同,至少在 wchar_t 所在的机器上 UTF-16。 (在 C++11 中,您可以强制使用 UTF-16,使用 std::u16string( 1, u'a' ).)

【讨论】:

    猜你喜欢
    • 2010-10-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-10
    • 1970-01-01
    相关资源
    最近更新 更多