Надо считать бесконечный ряд переменных типа double
с консоли. Например, я ввожу:
100 500.20 800
жму Enter, и введенные значения записываются в массив. Как так сделать?
Например, что-то вроде этого:
for(;;)
{
double n;
cin >> n;
// Что-то делаем
// Если все введено - break;
}
Update
Если считывание из одной строки - то можно, например, так
string s;
getline(cin,s); // Чтение строки ("до нажатия Enter")
istringstream is(s); // Строковый поток для чтения
double n;
while(is >> n)
{
// Что-то делаем со считанными числами
}
Чтение до окончания ввода (в Linux Ctrl+D, в Windows — Ctrl+Z):
#include <iterator>
#include <iostream>
#include <vector>
int main()
{
std::vector<double> v(std::istream_iterator<double>(std::cin), {});
std::copy(std::begin(v), std::end(v), std::ostream_iterator<double>(std::cout, " "));
}
Чтение в строку до Enter с последующим чтением из строки:
#include <iterator>
#include <iostream>
#include <vector>
#include <string>
#include <sstream>
int main()
{
std::string s;
std::getline(std::cin, s);
std::istringstream iss(s);
std::vector<double> v(std::istream_iterator<double>(iss), {});
std::copy(std::begin(v), std::end(v), std::ostream_iterator<double>(std::cout, " "));
}
Оборудование для ресторана: новинки профессиональной кухонной техники
Частный дом престарелых в Киеве: комфорт, забота и профессиональный уход
Подскажите, зачем в приведенном примере инициализируется локальный массив char temp[80] ? Массив не используется, но и объяснений нет никаких,...
Ситуация такая: Насколько я понял функция ниже возвращает cv::Mat по HWND окна, если брать HWND desktop или не менять размер исследуемого окна, то все...
Указанное в заголовке предупреждение выдается на вот этой строке: