字符变数字

8 分钟

因为 '0''9' 这十个字符的编号是连着排的,所以字符 '7' 减去字符 '0',差正好是 7,也就是它真正代表的数字。这一招在处理数字字符时天天用。

#include <iostream>
using namespace std;
int main() {
    char c = '7';
    int n = c - '0';
    cout << n << endl;      // 7
    cout << n + 1 << endl;  // 8,可以拿去算数了
    return 0;
}

'9' - '0' 就等于 9。最容易犯的错是直接写 int n = c;,那拿到的是编号 55,不是 7。想把数字字符变成能算数的数,一定要记得减掉 '0'

小纸条

字符 9 减字符 0 等于几?

登录 后可看答案

字符变数字 · C++ 入门 · op599 课程