vedi http://www.augustcouncil.com/~tgibso...al/iotips.html
prova con:
cin >>i;
if(!std::cin){cout<<"OPS!!";exit(1);}

funziona (crea il messaggio di errore)se dai una lettea o un'altro simbolo, fai attenzione pero' che se dai un numero con la virgola cin prende la parte intera senza i=ad un intero senza messaggio d'errore.
comunque guarda nel sito magari c'e' un modo migliore. ciao