Oppure

Loading
30/09/12 21:12
pierotofy
Io di solito uso questa:


/* Handles bad input to read an integer */
int read_int(){
	string input;
	int number = 0;

	while (true) {
	  getline(cin, input);

	  stringstream mystream(input);
	  if (mystream >> number) break;
	  return -1; // Invalid number
	 }

	return number;
}


Se l'input non e' un intero, ritorna -1 (ovviamente se devi leggere -1, cambialo con qualcos'altro oppure lancia un'eccezione).
Il mio blog: piero.dev