Potrzebuję sprawdzić czy wczytana zmienna typu double rzeczywiście jest liczbą, a nie znaczkiem, albo literą.
double x;
cin>>x;
if(czyDouble(x)) return x*x;
Potrzebuję sprawdzić czy wczytana zmienna typu double rzeczywiście jest liczbą, a nie znaczkiem, albo literą.
double x;
cin>>x;
if(czyDouble(x)) return x*x;
Zobacz tutaj: http://4programmers.net/C/FAQ/Zabezpieczenie_przed_wpisywaniem_liter
Chociaż wydaje mi się, że użycie cin.sync()
jest błędne - to co robi ta funkcja jest implementation defined*. Lepiej było by użyć ignore
.
sync
nic nie robi.