【问题标题】:How to print the ASCII value of a int in C++?如何在 C++ 中打印 int 的 ASCII 值?
【发布时间】:2015-02-11 21:18:00
【问题描述】:

我是 C++ 的初学者,我想编写一个程序来打印字母表('a'、'b'、....'z')和数字('0'. ..'9')。

我可以使用“int()”函数打印字母表的 ASCII 值。

例子:

char a = 'a';

std::cout<<int(a);

如我所料,上面代码的结果是“97”。

但是,我不知道如何打印数字的 ASCII 值。例如,如果我有 int 2,我想得到 2 的 ASCII 值,即 48。

我尝试使用函数“int()”,但结果是 int 值,而不是 ASCII 值。

【问题讨论】:

  • 你做同样的事情,改变引号内的内容。
  • 在您的第一句话中,您将数字显示为 char 如果您将它们用作 char 会发生什么情况,例如字符 a = '8';
  • 这对我有用。谢谢。

标签: c++ ascii


【解决方案1】:

例如,如果我有 int 2,我想得到 2 的 ASCII 值,即 48。

std::cout << (2 + '0'); 

将打印2的ASCII值。

如果变量a 已知为0 - 9,您可以使用:

std::cout << (a + '0'); 

打印a对应的ASCII值。

【讨论】:

  • 这是可行的,因为 C++ 标准保证字符 '0''1' 等的值是连续的,例如 '0' + 9 == '9',即使系统不使用基于 ASCII 的字符集。信件没有类似的保证。例如,在基于 EBCDIC 的系统上,'a' + 25 != 'z'
猜你喜欢
  • 2017-01-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-10-14
  • 1970-01-01
  • 1970-01-01
  • 2022-12-10
  • 2019-10-05
相关资源
最近更新 更多