Ayuda con formato de hora

Iniciado por Dato Vagabundo, 4 Septiembre 2016, 21:49 PM

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

Dato Vagabundo

Hola buenas, estoy haciendo una función para que me reconozaca el formato de las horas en hh:mm pero cuando se trata de un formato asi no me retorna 1 y no se por que.
int hora(char *ho)
{   
    int h=0, m=0, i;
   
    if (ho==NULL)
        return 0;
         
    if (strlen(ho)!=5)
        return 0;
       
    for (i=0; i<5 ; i++)
    {
       
        if (i==2)
        {
            if (ho!=':')
           
                return 0;
        }
        else
        {
            if (ho<'0' || ho>'5')
             
                return 0;
        }
    }
   
    h = (ho[0]-'0')*10 + (ho[1]-'0');
    m = (ho[3]-'0')*10 + (ho[4]-'0');
 
   
   

    if (h<0 || h>23)
        return 0;
       
    if(m<0 || m>59)
        return 0;
       
 
    return 1;

}

AlbertoBSD

Esta instruccion se me hace que esta mal por que no considera los minutos del 6 en adelante

            if (ho<'0' || ho>'5')
             
                return 0;
Donaciones
1Coffee1jV4gB5gaXfHgSHDz9xx9QSECVW