初学者 - 值的ASCII表值> 9

时间:2017-03-16 00:13:37

标签: c++ ascii

例如5000。

通过asciitable网站:0 - > 12月和5月48日 - > 12月53日。

你添加数字吗? Dec的5000 = 53 + 48 + 48 + 48 = 197,所以在Dec的5000是197?

感谢任何帮助。

2 个答案:

答案 0 :(得分:1)

您不能将数字字符的ASCII索引添加到另一个数字字符的ASCII索引,以对这些数字所代表的数字执行数学运算。

ASCII是关于符号的样子,而不是它们的含义。 (种类。)

答案 1 :(得分:0)

atoi函数会为您执行此转换,但其核心是:

int atoi(const char *c) {
  int r = 0;

  while (*c) {
    r *= 10;
    r += *c - '0';
    ++c;
  }

  return r;
}

请注意,这会将每个值移动十倍,并且还会减去ASCII 0的基本偏移量,因此您要添加0,1,2等,而不是48,49,50,等