Validar la entrada de datos C

Iniciado por mester, 6 Octubre 2015, 20:14 PM

0 Miembros y 1 Visitante están viendo este tema.

mester


...
scanf("%d",&a);
if(isdigit(y)==0){
    printf("...");
}
else
    printf("Introduce un numero\n");
...
return 0;

Si yo escribo un caracter cuando llego al scanf se crashea y no sigue funcionando, no se imprime el else. ¿Cómo compruebo la entrada de datos?
Justicia es dar a cada uno lo que se merece

ivancea96

http://www.cplusplus.com/reference/cstdio/scanf/
scanf retorna el número de parámetros rellenados con datos. Si retorna 0 y ha de rellenar 1 parámetro, ha habido algún error.