printf no emite caracter numero por pantalla
Publicado por Facundo Nicolas (2 intervenciones) el 30/12/2018 07:48:10
Buenas noches, tengo una consulta muy particular y por lo que pienso, sencilla. Estoy trabajando en Bison y Flex para un analizador sintáctico, a la vez estoy trabajando con un fichero para el caso, cuestión que tengo la línea de análisis del fichero, descrito a continuación:
b:=6
esta cadena de caracteres de arriba lo tengo almacenada en una variable char (por ejemplo m).
conozco la posición del caracter numero 6
pero cuando intento printf("%c",m[pos]) por pantalla no emite nada, y estoy seguro que es la posicion correcta porque cuando cambio ese 6 por algun caracter letra, y procedo a reanalizar el fichero, el printf si cumple su objetivo, y me muestra por pantalla la letra en cuestión.
¿Tienen alguna idea a que se pueda deber el problema?
comentar también que si intento con un condicional del tipo
si m[a] es letra, comprueba la primer condición y emite por pantalla que es letra, pero si m[a] es un caracter numerico, no cumple la condición del if y tampoco emite el mensaje del else
b:=6
esta cadena de caracteres de arriba lo tengo almacenada en una variable char (por ejemplo m).
conozco la posición del caracter numero 6
pero cuando intento printf("%c",m[pos]) por pantalla no emite nada, y estoy seguro que es la posicion correcta porque cuando cambio ese 6 por algun caracter letra, y procedo a reanalizar el fichero, el printf si cumple su objetivo, y me muestra por pantalla la letra en cuestión.
¿Tienen alguna idea a que se pueda deber el problema?
comentar también que si intento con un condicional del tipo
1
2
3
4
5
6
7
8
if(m[a]>='a')
{
printf("es letra");
}
else
{
printf("es numero");
}
si m[a] es letra, comprueba la primer condición y emite por pantalla que es letra, pero si m[a] es un caracter numerico, no cumple la condición del if y tampoco emite el mensaje del else
Valora esta pregunta
0