std::getline
De cppreference.com
[] |
This page has been machine-translated from the English version of the wiki using Google Translate.
The translation may contain errors and awkward wording. Hover over text to see the original version. You can help to fix errors and improve the translation. For instructions click here. |
| Definido no cabealho <string>
|
||
template< class CharT, class Traits, class Allocator > std::basic_istream<CharT,Traits>& getline( std::basic_istream<CharT,Traits>& input, std::basic_string<CharT,Traits,Allocator>& str, CharT delim ); |
(1) | |
template< class CharT, class Traits, class Allocator > std::basic_istream<CharT,Traits>& getline( std::basic_istream<CharT,Traits>&& input, std::basic_string<CharT,Traits,Allocator>& str, CharT delim ); |
(1) | (desde C++11) |
template< class CharT, class Traits, class Allocator > std::basic_istream<CharT,Traits>& getline( std::basic_istream<CharT,Traits>& input, std::basic_string<CharT,Traits,Allocator>& str ); |
(2) | |
template< class CharT, class Traits, class Allocator > std::basic_istream<CharT,Traits>& getline( std::basic_istream<CharT,Traits>&& input, std::basic_string<CharT,Traits,Allocator>& str ); |
(2) | (desde C++11) |
getline l caracteres a partir de um fluxo de entrada e coloca-los em uma string:Original:
getline reads characters from an input stream and places them into a string:The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
1)
Se comporta como
UnformattedInputFunction, exceto que input.gcount() no afetado. Depois de construir e verificar o objeto de sentinela, executa o seguinte:Original:
Behaves as
UnformattedInputFunction, except that input.gcount() is not affected. After constructing and checking the sentry object, performs the following:The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
1)
Chama
str.erase()Original:
Calls
str.erase()The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
2)
Extrai personagens de
input e acrescenta-lhes a str at uma das seguintes situaes (marcada na ordem listada)Original:
Extracts characters from
input and appends them to str until one of the following occurs (checked in the order listed)The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
a)
fim-de-arquivo na condio
input, caso em que, getline conjuntos eofbit e retornos.Original:
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
b)
o caracter de entrada disponvel
delim, como testado por Traits::eq(c, delim), caso em que o carcter delimitador extrado input, mas no acrescentado ao str.Original:
the next available input character is
delim, as tested by Traits::eq(c, delim), in which case the delimiter character is extracted from input, but is not appended to str.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
c)
Caracteres
str.max_size() foram armazenados, caso em que getline conjuntos failbit e retornos.Original:
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
3)
Se nenhum dos caracteres foram extrados por qualquer motivo (nem mesmo o delimitador descartados),
getline conjuntos failbit e retornos.Original:
If no characters were extracted for whatever reason (not even the discarded delimiter),
getline sets failbit and returns.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
2)
Mesmo que
getline(input, str, input.widen(\n)), isto , o padro o carcter delimitador endline.Original:
Same as
getline(input, str, input.widen(\n)), that is, the default delimiter is the endline character.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
Parmetros
| input | - | o fluxo para obter os dados
Original: the stream to get data from The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
| str | - | a corda para colocar os dados
Original: the string to put the data into The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
| delim | - | o caractere delimitador
Original: the delimiter character The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
Valor de retorno
input
Exemplo
O cdigo a seguir pede ao usurio para o seu nome, em seguida, cumprimenta-los usando esse nome .
Original:
The following code asks the user for their name, then greets them using that name.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
#include <string>
#include <iostream>
int main()
{
std::string name;
std::cout << "What is your name? ";
std::getline(std::cin, name);
std::cout << "Hello " << name << ", nice to meet you.";
}
Potencial sada:
What is your name? John Q. Public
Hello John Q. Public, nice to meet you.