Да, объект cinв C++ по умолчанию считывает пробельные символы. Когда вы используете оператор извлечения (>>) с cin, он считывает и отбрасывает все ведущие пробельные символы (например, пробелы, табуляции и новые строки) перед извлечением фактического ввода.. Он продолжает читать ввод до тех пор, пока не встретит следующий пробельный символ.
Вот несколько методов, связанных с чтением входных данных и обработкой пробелов в C++:
-
Чтение слова. Чтобы прочитать одно слово (последовательность символов без пробелов), вы можете использовать оператор
>>со строковой переменной. Он будет читать ввод до тех пор, пока не встретит пробел.std::string word; std::cin >> word; -
Чтение строки. Если вы хотите прочитать всю строку ввода, включая пробельные символы, вы можете использовать функцию
getline().std::string line; std::getline(std::cin, line); -
Игнорирование начальных пробелов. Если вы хотите игнорировать ведущие пробелы перед чтением определенного типа ввода, вы можете использовать манипулятор
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;