Fallo al comparar 2 variables de hora

Al final lo he conseguido convirtiendo la hora actual a minutos y comparando antes de la conversión, aunque me gustaría saber el motivo de que no me funcionara de la otra forma, ando un poco perdido con los string array char... si alguien sabe algún sitio donde lo expliquen decente ya que no tengo mucha idea de programar en c