我想将此^
输出到控制台,但我想使用ASCII代码而不是值本身。有没有人知道如何做到这一点?
答案 0 :(得分:5)
该符号称为caret。 ASCII代码为十六进制0x5e
(十进制= 94)。
C版:
printf("%c", 0x5e);
C ++版本:
std::cout << static_cast<char>(0x5e);
这两个假设您在系统上运行,默认字符编码将插入符号赋值为0x5e
。
为了避免不得不依赖这个假设,最好不要使用ASCII码,而是使用'^'
。
答案 1 :(得分:2)
插入符字符(^
)的十六进制值最常 0x5e ( 94 十进制)。
std::cout << static_cast<char> (0x5e) << " " << (char)94 << " " << '\x5e';
我的播放表 输出:"^ ^ ^"
我写“最常见”因为标准不保证用什么整数值代表某个角色,所以你不应该做你自己的言下之意。
即使它可能会以您想要的方式运行(因为大多数现代操作系统代表使用该值的插入符号),但不推荐使用它...如果不是在所有情况下,在标准中没有人能保证它能在所有平台上运行。
2.3 / 3字符集[lex.charset]
执行字符集和执行宽字符集是 实现定义的基本执行字符集的超集 和基本执行宽字符集。 价值观 执行字符集的成员和集合 其他成员是特定于语言环境的。
答案 2 :(得分:0)
根据此页面:http://www.ascii-code.com/
这是ASCII码0x5e。