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".