[C con Clase] Problema con if
David Reza
l.fix3r.l en gmail.com
Dom Ago 17 18:16:34 CEST 2008
Lo que sucede es que 'edad' es una cadena de caracteres, o lo que es igual,
texto, y tú quieres comparar un *texto* con un *número*.
Lo que podrías hacer sería comparar la cadena 'edad' con la cadena "17"
mediante una función de la librería "cstring" que se llama 'strcmp()':
if (strcmp(edad, "17") <= 0)
> {
> .....
>
}
>
La función da un valor de 0 si las dos cadenas son iguales; un número mayor
o igual a 0 si la primera cadena es mayor o igual a la segunda; y un número
menor que 0 si la primera cadena es menor que la segunda. A nosotros nos
interesa saber si el la cadena es menor o igual a "17" para restringir el
acceso, por eso se compara con <=.
Para más información sobre la función entra a la página de C con Clase:
http://c.conclase.net/librerias/funcion.php?fun=strcmp
Por otro lado, podrías hacer las cosas más fácil y utilizar una variable
'int' en vez de el array 'char' y comparar directamente con el número 17:
int edad;
> ....
>
if (edad <= 17 )
> {
> ...
> }
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.conclase.net/pipermail/cconclase_listas.conclase.net/attachments/20080817/2b4ac41a/attachment.html>
Más información sobre la lista de distribución Cconclase