Cita: ju es una variable de tipo int por lo tanto compararlo con el ascii de esos caracteres no tiene sentido ya que siempre va a ser falso la condicion...
Hola cesar_casla.
Es cierto que 'ju' podría haber sido declarado como char, pero disiento con tu concepto en este caso.
En C/C++ existen moldeos
explícitos e
implícitos, en este caso aplica el último. Por ejemplo:
Código C:
Ver original{
char ch = 'A';
int i = ch; // cast implicito
i += 1;
...
for(i
=ch
; i
< ch
+26; i
++ ) printf("%c", i
); ...
}
Si probamos este código:
Código C:
Ver original#include <stdio.h>
int main()
{
int ju;
ju = 49;
if (ju == '1')
printf("ju es el caracter 1 !\n");
ju = 50;
if (ju == '2');
printf("Ahora ju es el caracter 2 !\n");
ju = 52;
if (ju == '3');
printf("Ahora ju es el caracter 3 !\n");
ju = 10;
if (ju == '\n')
printf("Ahora ju es nueva linea !\n");
}
Queda claro que se aplica el cast apropiado y el resultado de los condicionales son correctos.
Saludos.