【发布时间】:2017-05-14 20:02:22
【问题描述】:
typedef basic_string<char> string;
标准库中的所有std::string 工具都使用char。这是为什么?尽管 ASCII 表 (128) 的所有字符都适合 char 的范围(-128 到 127),但许多其他字符编码都使用 8 位表示。
在一串字符中包含“负”值有什么好处?
【问题讨论】:
-
附注:
char可以有符号也可以无符号,它不是由 c++ 指定的 -
这个问题不是骗人的,但this answer 的引述或多或少也回答了你的问题
-
char可以是有符号或无符号的,并且可能包含超过 8 位,ASCII 也不是必需的。在您使用的系统上最有效的方法。