In C++, cin
e cin.get()
sono entrambi utilizzati per l’input da parte dell’utente, ma ci sono alcune importanti differenze tra loro. In estrema sintesi possiamo dire che cin.get()
è una funzione membro della classe cin
la quale prende in input un solo carattere mentre quest’ultima prende in input una intera stringa.
Cerchiamo di spiegarlo più nel dettaglio.
cin
è un oggetto di tipo istream
e viene utilizzato per leggere valori di diversi tipi, come interi, float e stringhe. Ad esempio, si può utilizzare cin
per leggere un numero intero inserito dall’utente:
#include <iostream> using namespace std; int main() { int numero; cout << "Inserisci un numero: "; cin >> numero; cout << "Hai inserito: " << numero << endl; return 0; }
cin.get()
è un metodo dell’oggetto istream
che legge un singolo carattere dall’input. Ad esempio, si può utilizzare cin.get()
per leggere un singolo carattere come questo:
#include <iostream> using namespace std; int main() { char c; cout << "Digita un carattere: "; c = cin.get(); cout << "Hai digitato: " << c << endl; return 0; }
In sintesi, cin
viene utilizzato per leggere valori di diversi tipi, mentre cin.get()
viene utilizzato per leggere un singolo carattere.