std::getline
| Defined in header <string>
|
||
| template< class CharT, class Traits, class Allocator > std::basic_istream<CharT,Traits>& getline( std::basic_istream<CharT,Traits>& input, |
(1) | |
| template< class CharT, class Traits, class Allocator > std::basic_istream<CharT,Traits>& getline( std::basic_istream<CharT,Traits>&& input, |
(1) | (начиная с C++11) |
| template< class CharT, class Traits, class Allocator > std::basic_istream<CharT,Traits>& getline( std::basic_istream<CharT,Traits>& input, |
(2) | |
| template< class CharT, class Traits, class Allocator > std::basic_istream<CharT,Traits>& getline( std::basic_istream<CharT,Traits>&& input, |
(2) | (начиная с C++11) |
Считывает неформатированные данные из потока в строку. Останавливается, как только найден символ, равный разделителю, или исчерпан поток. Первая версия использует в качестве разделителя delim, вторая — '\n'. Символ-разделитель удаляется из потока и не помещается в строку.
[править] Параметры
| input | — | поток, из которого считываются данные |
| str | — | строка, в которую считываются данные |
| delim | — | символ-разделитель |
[править] Возвращаемое значение
input
[править] Пример
Следующая программа спрашивает у пользователя его имя и затем приветствует, используя это имя.
#include <string> #include <iostream> int main() { std::string name; std::cout << "Как вас зовут? "; std::getline(std::cin, name); std::cout << "Здравствуйте " << name << ", приятно познакомиться."; }
Вывод:
Как вас зовут? Джон К. Паблик Здравствуйте Джон К. Паблик, приятно познакомиться.