我有以下程序:
int main() {
int i;
while (cin >> i) {
cout << abs(i) << endl;
}
return 0;
}
(其中 abs 由 int abs(int val) 定义)
当我输入一个非整数数字时,例如-1.2,它将给出以下输出:
$ -1.2
1
我的问题是:为什么 while 身体会被执行?我认为只要我输入一个非整数值,条件就会失败,程序应该终止。谢谢!
我有以下程序:
int main() {
int i;
while (cin >> i) {
cout << abs(i) << endl;
}
return 0;
}
(其中 abs 由 int abs(int val) 定义)
当我输入一个非整数数字时,例如-1.2,它将给出以下输出:
$ -1.2
1
我的问题是:为什么 while 身体会被执行?我认为只要我输入一个非整数值,条件就会失败,程序应该终止。谢谢!