Autor
|
Tema: cómo comparar una variable caracter con un código ascii en C (Leído 25,195 veces)
|
etcheverrypablol
Desconectado
Mensajes: 37
¡Hoy mejor que ayer, mañana mejor que hoy!
|
Hola gente.
Tengo que resolver el siguiente problema:
"Determinar si el carácter asociado a un código introsucido por teclado corresponde a un carácter alfabético, dígito, de puntuación, especial o no imprimible".
Para ello, lo que quiero hacer es comparar la variable donde se almacena el caracter introducido con un cierto rango de caracteres expresados en código ascii, pero no encuentro cómo.
En pascal, si no mal recuerdo, se hace uso del símobolo #, pero en C nosé.
Algunos puede aportar algo para resolver este dilema? jaja
Desde ya gracias!
|
|
|
En línea
|
|
|
|
MAFUS
Desconectado
Mensajes: 1.603
|
Mira las funciones de la libreria ctype, está todo lo que buscas.
|
|
|
En línea
|
|
|
|
fary
|
Puedes programar tu mismo la funcion. Ya sabes que cada carácter equivale a un número del 0 al 255.
Saludos.
|
|
|
En línea
|
Un byte a la izquierda.
|
|
|
MAFUS
Desconectado
Mensajes: 1.603
|
Soy de la opinión de que reinventar la rueda es un mal hábito. Las librerías estándar suelen estar lo más optimizadas y libres de errores posible.
|
|
|
En línea
|
|
|
|
ivancea96
Desconectado
Mensajes: 3.412
ASMático
|
Soy de la opinión de que reinventar la rueda es un mal hábito. Las librerías estándar suelen estar lo más optimizadas y libres de errores posible.
Sin duda, importante a la hora de programar proyectos serios, pero no a la hora de aprender lenguajes. Luego, etchevarrypablol, ten en cuenta que un caracter en C, es un dato numérico, sea cual sea la forma mediante la cual, funciones como printf lo muetran en consola. Siendo así, la forma de conocer si un valor está en un rango: char c = 'k'; if('a'<=c && c<='z') ...
Bueno, ten en cuenta que 'a' es un caracter, y "a" es una cadena, por si acaso.
|
|
|
En línea
|
|
|
|
furciorifa
Desconectado
Mensajes: 94
|
Estoy de acuerdo que reinventar la rueda es malo, pero también ayuda mucho a saber cómo funcionan las cosas en cualquier lenguaje.
|
|
|
En línea
|
|
|
|
etcheverrypablol
Desconectado
Mensajes: 37
¡Hoy mejor que ayer, mañana mejor que hoy!
|
Hola chicos, disculpen la demora en responder.
Mafus, se que puede haber una librería, pero en mi caso, yo quiero hacer la función. En ese sentido, se que cada caracter se asocia con un número del 0 al 255, pero no sé como expresarlo en el código.
fary, cómo hago para comparar la variable caracter con un rango de caracteres expresados en el cógio ascii sabiendo qué se asocian con esos números.
ivancea96, sé que se puede hacer de esa forma, pero no es la que busco.
Debería ser algo así: if(var>#70 && var<#90) { puts("El cacarter es tal cosa"); }
|
|
« Última modificación: 5 Febrero 2016, 10:28 am por Eternal Idol »
|
En línea
|
|
|
|
fary
|
Seguro que mirando la tabla ascii lo consigues hacer. Son solo unas comparaciones con if...
|
|
|
En línea
|
Un byte a la izquierda.
|
|
|
etcheverrypablol
Desconectado
Mensajes: 37
¡Hoy mejor que ayer, mañana mejor que hoy!
|
Es que no puedo poner if(78){ puts("El caracter es una N"); } Lo que preciso saber es qué se ponde adentro de esa condicion, seguro que es algo muy simple, como anteponer un símbolo delante del número que hace referencia al código ascii.
Supongo eso, porque en otros lenguajes como en pascal se hace eso, aunque soy conciente que en C puede ser totalmente distinto.
|
|
|
En línea
|
|
|
|
fary
|
Es que no puedo poner if(78){ puts("El caracter es una N"); } Lo que preciso saber es qué se ponde adentro de esa condicion, seguro que es algo muy simple, como anteponer un símbolo delante del número que hace referencia al código ascii.
Supongo eso, porque en otros lenguajes como en pascal se hace eso, aunque soy conciente que en C puede ser totalmente distinto.
Yo necesito saber como hacer una consulta en SQL, pero si no me pongo a leer nada de SQL, ¿Cómo lo espero hacer?. Ta pasa lo mismo pero en C, si no sabes hacer una simple comparación con un if, ¿Qué sabes de C? char c = 78; if (c == 78) { }
|
|
|
En línea
|
Un byte a la izquierda.
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Como sacar el ultimo caracter de una variable
Programación Visual Basic
|
Edu
|
8
|
5,783
|
5 Septiembre 2010, 19:29 pm
por Edu
|
|
|
Comparar cadena con un caracter ascii
Programación C/C++
|
d00ze13
|
2
|
11,757
|
9 Marzo 2011, 10:30 am
por Akai
|
|
|
¿Cómo evitar el ingreso de caracter en variable entera?
.NET (C#, VB.NET, ASP)
|
Dryken
|
8
|
5,192
|
26 Noviembre 2012, 20:21 pm
por Dryken
|
|
|
cómo comparar una variable string con una cadena en C
Programación C/C++
|
etcheverrypablol
|
6
|
5,532
|
6 Febrero 2016, 18:35 pm
por fary
|
|
|
Comparar variable de un comando con variable obtenida por read
Scripting
|
izi4me
|
1
|
3,286
|
31 Diciembre 2021, 18:31 pm
por izi4me
|
|