【发布时间】:2014-03-06 15:39:53
【问题描述】:
我正在尝试通过这段代码读取未知数量的整数:
while (1) {
int c = getchar ();
if (c == EOF)
break;
else if (isdigit (c))
current = current * 10 + (c - '0');
else {
total += current;
current = 0;
}
}
我知道current = current * 10 + (c - '0');有,但我不知道为什么会有c - '0'。你能给我解释一下吗?提前谢谢你。
【问题讨论】:
-
旁注:当前未在您的代码中初始化。
-
@hivert 它可以在
while循环之上初始化。