std::getline
Da cppreference.com.
|
|
Questa pagina è stata tradotta in modo automatico dalla versione in ineglese della wiki usando Google Translate.
La traduzione potrebbe contenere errori e termini strani. Muovi il puntatore sopra al testo per vedere la versione originale. Puoi aiutarci a correggere gli gli errori. Per ulteriori istruzioni clicca qui. |
| Elemento definito nell'header <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) | (dal 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) | (dal C++11) |
getline legge i caratteri da un flusso di input e li colloca in una stringa: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)
Si comporta come
UnformattedInputFunction, salvo che input.gcount() non è interessato. Dopo la costruzione e la verifica dell'oggetto sentinella, esegue le seguenti operazioni: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)
Chiamate
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)
Estrae personaggi
input e li aggiunge al str fino a quando uno dei seguenti casi (controllate nell'ordine elencato)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)
end-of-file sul
input condizione, in questo caso, getline set eofbit e ritorna.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)
il carattere successivo ingresso disponibile è
delim, come testato da Traits::eq(c, delim), nel qual caso viene estratto il carattere delimitatore da input, ma non è aggiunto al 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)
Caratteri
str.max_size() sono stati memorizzati, in questo caso, getline set failbit e ritorna.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 nessun carattere sono stati estratti per qualsiasi motivo (nemmeno il delimitatore scartato),
getline set failbit e ritorna.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)
Stessa
getline(input, str, input.widen(’\n’)), cioè, il default è il carattere delimitatore linea di fondo.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.
Parametri
| input | - | il flusso per ottenere i dati
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 | - | la stringa di mettere i dati in
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 | - | il carattere delimitatore
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. |
Valore di ritorno
input
Esempio
Il codice seguente chiede all'utente per il loro nome, poi li saluta con quel 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.";
}
Possible output:
What is your name? John Q. Public
Hello John Q. Public, nice to meet you.