observa que en los if de hexDecç
haces esto
if (c1 != 'q' && c2 != 'q')
{
if ('0' <= c1 && c1 <= '9')
v1 = c1 - '0';
else if ('A' <= c1 && c1 <= 'F')
v1 = c1 - 'A' + 10;
else if ('a' <= c1 && c1 <= 'f')
v1 = c1 - 'a' + 10;
else
{
hexValidos(c1,c2);
}
lo que haces es comprobar que sean validos (si no son "q", si son entre 0 y 9 o a y f...) en caso de que el no pueda procesarlos manda a hexValidos... pero quien te dispara el "el resultado es"
es esta linea
if (cuno == NOERROR && cdos == NOERROR)
más la variable "cuno" nunca la tocaste en hexDec así que siempre va a correr ese mensaje...
el otro problema creo que es porque en hexValidos declaraste
char va1;
char va2;
les asignaste valores... pero propiamente nunca las usaste para dar salida a algo y el compilador te está diciendo que cuidado con eso capaz olvidaste algo
la funcion como la tenias al principio
if (
(
('0' <= a && a <= '9') || ('A' <= a && a <= 'F') || ('a' <= a && a <= 'f')
) && (
('0' <= b && b <= '9') || ('A' <= b && b <= 'F') || ('a' <= b && b <= 'f')
)
)
parecía bastante practica si eso es falso, es invalido, si es verdadero es valido
veo que respondiste XD bueno pero checkea esos detallitos