Понимание обработки пробелов во входных данных C++ с помощью cin

Да, объект cinв C++ по умолчанию считывает пробельные символы. Когда вы используете оператор извлечения (>>) с cin, он считывает и отбрасывает все ведущие пробельные символы (например, пробелы, табуляции и новые строки) перед извлечением фактического ввода.. Он продолжает читать ввод до тех пор, пока не встретит следующий пробельный символ.

Вот несколько методов, связанных с чтением входных данных и обработкой пробелов в C++:

  1. Чтение слова. Чтобы прочитать одно слово (последовательность символов без пробелов), вы можете использовать оператор >>со строковой переменной. Он будет читать ввод до тех пор, пока не встретит пробел.

    std::string word;
    std::cin >> word;
  2. Чтение строки. Если вы хотите прочитать всю строку ввода, включая пробельные символы, вы можете использовать функцию getline().

    std::string line;
    std::getline(std::cin, line);
  3. Игнорирование начальных пробелов. Если вы хотите игнорировать ведущие пробелы перед чтением определенного типа ввода, вы можете использовать манипулятор std::wsили std:: SkipwsМанипулятор ввода-вывода.

    // Using std::ws
    std::cin >> std::ws;
    std::string word;
    std::cin >> word;
    // Using std::skipws
    std::cin >> std::skipws >> word;