在1.4.4的练习中,习惯性的把enter看做是结束输入了。
结果发现按enter后程序并没有结束,只有在按ctrl+z 和enter后程序才结束,结果才正常。
#include<iostream>
int main() {
int currVal = 0, val = 0;
if (std::cin >> currVal) {
int cnt = 1;
while (std::cin >> val) {
if (val == currVal)
++cnt;
else {
std::cout << currVal << " occurs " << cnt
<< " times " << std::endl;
currVal = val;
cnt = 1;
}
}
std::cout << currVal << " occurs " << cnt << " times " << std::endl;
}
return 0;
}
我先输入了 5 5 5 6 6 7 7 7,按下enter后,只输出了5 和6的结果,这说明程序仍然处于while 的循环当中,继续按enter,也没有输出7的结果,说明enter并没有作为一个输入进入cin中,输入8后,输出了7的结果,只有在ctrl+z和enter后,才正常输出。
以上说明,enter在输入的时候仅仅只有回车换行的作用,
既不能作为输入结束的标志,也不能作为一个 输入进入cin中。
在windows中只有ctrl+z和enter才是输入文件结束的标志。
以上。