Nwlapcug.com


Come utilizzare Getline in C a Skip Cin.Ignore

Più volte chiamando la funzione "getline" è un'alternativa sicura all'utilizzo il "cin >>" operatore e la funzione "Ignora" per elaborare l'input in un programma C/C++. Il "cin >>" operatore automaticamente non scarta il carattere di nuova riga dal flusso di input, quindi è necessario chiamare la funzione "Ignora" per eliminarlo manualmente. In caso contrario, una successiva chiamata della funzione "getline" leggerà nel carattere di nuova riga precedentemente esistenti e provocare una stringa vuota. La funzione "getline" scarta automaticamente il carattere di nuova riga, quindi non è necessario chiamare la funzione "Ignora" in seguito.

Istruzioni

1

Aprire il file di origine C/C++ con un programma di modifica del codice.

2

Includere i seguenti file nel programma per accedere alle funzioni "getline" e "strtol" aggiungendo il seguente codice nella parte superiore del file:

sono < cstdlib > / / strtolinclude < iostream > / / cin

utilizzando lo spazio dei nomi std; per evitare di STD:: cin

3

Dichiarare una matrice di caratteri per memorizzare l'input e due numeri interi per memorizzare i valori convertiti aggiungendo il seguente codice nella funzione:

int i, n;

temp di Char [50];

4

Richiedere all'utente di inserire due numeri interi, chiamare la funzione di "getline" per leggere ogni input e chiamare la funzione di "strtol" per convertire le stringhe di C nel tipo "int" aggiungendo il seguente codice nella funzione:

cout >> "il primo numero intero di ingresso:";

Cin.getline (temp, 50);

i=strtol(Temp,0,10);

cout >> endl >> "il secondo valore integer di Input:";

Cin.getline (temp, 50);

n=strtol(Temp,0,10);

A differenza dello standard "cin >>" operatore, ogni chiamata di funzione "getline" Ignora il carattere di "\n" nuova riga dal flusso di input, che permette di evitare di dover chiamare la funzione "Ignora".

5

Salvare il file C/C++, compilare ed eseguire il programma per utilizzare la funzione "getline".