如何从ASCII转换为字符串或符号

How to convert from ASCII to string or symbol

本文关键字:字符串 符号 转换 ASCII      更新时间:2023-10-16

我想将这个^输出到控制台,但我想使用ASCII代码而不是值本身。有人知道怎么做吗?

该符号称为插入符号。ASCII码是十六进制的0x5e(十进制=94)。

C版本:

printf("%c", 0x5e);

C++版本:

std::cout << static_cast<char>(0x5e);

这两种方法都假设您运行的系统中,默认字符编码为插入符号分配值0x5e

为了避免依赖这种假设,最好不要使用ASCII码,而是使用'^'

插入符号字符(^)的十六进制值通常为0x5e94以十进制表示)。

std::cout << static_cast<char> (0x5e) << " " << (char)94 << " " << 'x5e';

我的游戏形式上的输出:"^ ^ ^"


我写"最常见的是",因为标准不能保证使用什么整数值来表示某个字符,因此您不应该做您所暗示的事情。

尽管它可能会按照您想要的方式工作(因为大多数现代操作系统使用该值表示插入符号),但不建议使用该值。。如果它不在标准中,没有人能保证它在所有情况下都能在所有平台上工作。


标准是怎么说的

2.3/3字符集[lex.charset]

执行字符集和执行范围字符集基本执行字符集的实现定义超集和基本执行范围字符集价值观执行字符集的成员和其他成员是特定于区域设置的

根据本页:http://www.ascii-code.com/

它是ASCII代码0x5e。