我有这段代码:
int obj;
while ( std::cin >> obj )
{
std::cout << obj << std::endl ;
int temp = obj ;
++ temp;
std::cout << temp << std::endl ;
}
当我给出正确的整数输入时,我理解输出。
例如。如果我得到 12 作为输入,我会在控制台上看到类似这样的内容:
12
12
13
但是,如果我给出一些带有空格的整数作为输入,我似乎无法理解输出。
例如。如果我输入 12 12 12 12,我会在控制台上看到:
12 12 12 12
12
13
12
13
12
13
12
13
有人可以解释一下吗?
最佳答案
第一个示例包含您的输入。
输入
12
输出
12
13
第二个示例就是这样,对于作为输入收到的 4 个数字中的每一个,都乘以 4 次。分隔符是“空白”——空格、换行符或制表符。它不是“非整数”,而是“四个整数”:
输入:
12 12 12 12
相当于
12
12
12
12
输出:
12
13
12
13
12
13
12
13
关于c++ - 通过控制台传递非整数输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17291748/