Я изучаю C ++, используя книгу C ++ Primer.
В Раздел 1.4.3 , приведен следующий пример кода для чтения неизвестного количества входных данных.
#include <iostream>
int main()
{
int sum = 0, value = 0;
// read until end-of-file, calculating a running total of all values read
while (std::cin >> value)
sum += value; // equivalent to sum = sum + value
std::cout << "Sum is: " << sum << std::endl;
return 0;
}
Согласно книге, если мы введем 3 4 5 6
, вывод будет Sum is: 18
Но когда я попробую это сделать на моем компьютере ( Windows 10 с MinGW * 1013)*), Код не заканчивается.Он просто продолжает запрашивать ввод, даже если я вхожу на новую строку.Это работает только тогда, когда я ввожу не-int ввод, такой как f
.
Ожидается ли это?Если да, есть ли какой-нибудь код, который останавливается после ввода новой строки?
Я довольно новичок в c ++, и я уже выучил python, поэтому застревание на столь раннем этапе довольно разочаровывает.
Спасибо и всего наилучшего.