一 背景:
实现从命令行输入 不定长度的数字,求和的简单功能;
方法1:
这是最简单的方法,但是缺点在于:如注释所示,在Windows系统下只能以Ctrl+Z或其他非data的类型的输入作为输入结束符,常用的Enter键不能作为结束符。
疑问:会不会是因为输入数据data类型是int类型引起的呢?
测试1:
预期结果:当输入Enter键后,会跳出while循环。但是结果是while循环一直在执行,跳不出。
猜想的结论:可能cin这个对象调用运算符>>时,会忽略Enter键的。
二 查阅资料 得到结论:
1 常用的cin、cout是类的对象
2 用cin输入的数据会先保存到缓冲区中,刷新缓冲区的方法有多种方法,其中Enter键的输入就是其中一种刷新缓冲区的方法。
cin对象有很多类函数和操作符,其中“>>”就是一种输入操作符。用这种方法进行输入时,Enter