Функция перевода в Python 3 [дубликат]

Похоже, вам нужно чтение на основе строки. Для этого вы, вероятно, захотите последовательно использовать getline, а затем проанализировать каждую строку, если вам нужно проанализировать число из строки чтения. Это делает чтение ввода более последовательным.

Таким образом, вам не нужно вручную проверять конец каждой строки, чтобы гарантировать, что следующая операция чтения начинается с новой строки.

Это также упрощает добавление обработки ошибок для повторения запросов ввода.

, например

#include <string>
#include <iostream>
#include <istream>
#include <ostream>
#include <sstream>

int parse_integer(const std::string& input)
{
    std::istringstream iss(input);
    int result;
    if (!(iss >> result))
    {
        // error - throw something?
    }
    return result;
}

int main()
{
    int number;
    std::string str;
    int accountNumber;

    std::string inputline;

    std::cout << "Enter number: ";

    if (!std::getline(std::cin, inputline))
    {
        // error - throw something?
    }

    number = parse_integer(inputline);

    std::cout << "Enter name:";

    if (!std::getline(std::cin, inputline))
    {
        // error - throw something?
    }

    str = inputline;

    std::cout << "Enter account number:";

    if (!std::getline(std::cin, inputline))
    {
        // error - throw something?
    }

    accountNumber = parse_integer(inputline);

    return 0;
}
16
задан boatcoder 6 July 2018 в 14:03
поделиться