Programación General => C/C++ => Mensaje iniciado por: daniel83_dev en Sábado 18 de Junio de 2005, 02:05
Título: Trabajando Con Numeros Base Hexadecimal
Publicado por: daniel83_dev en Sábado 18 de Junio de 2005, 02:05
Hola muchachos... tengo una duda acerca de como trabajar con numeros hexadecimales ... es decir tratar de almacenarlos en una variable .... trabajo con el Borland c++ 4.5 no se si debo de usar alguna libreria en especial .... lo unico que se es para representar numeros en base decimal a base hexadecimal ... mediante la libreria <iomanip.h> pero lo que yo quiero es almacenar un numero entero en base hexadecimal en una variable.. o sino tambien alguna funcion que convierta numeros en base 10 a base 16 (hexadecimal)
Gracias
Título: Re: Trabajando Con Numeros Base Hexadecimal
Publicado por: RadicalEd en Sábado 18 de Junio de 2005, 02:25
Lo unico que debes hacer es:
Código: Text
x=15;
printf("El número %d en hexadecimal es: %x",x,x);
Ojala te sirva. Chao
Título: Re: Trabajando Con Numeros Base Hexadecimal
Publicado por: pitukilloloco en Sábado 18 de Junio de 2005, 02:35
Cuando tu declaras una variable entera (sea esta como int, short, long, char, unsigned o una combinación de estas) su valor numérico se almacena como una combinación de 1's y 0's y es el mismo valor no importa si lo interpretas como decimal, hexadecimal, octal, binario u otra base que tu elijas. De modo que eso que dices de "almacenar un numero entero en base hexadecimal en una variable" no tiene sentido. Cuando por el teclado introduces un valor a una variable entera usando por ejemplo la función scanf esta por defecto lee valores en base decimal, si quieres que lo introducido se interprete en otra base tendrías que hacer una función que dada una cadena te la interpretara en la base que tu quieres y almacenara su valor en una variable. Para el caso contrario ya existe una función. Esto es, dada una variable entera, la función itoa convierte este valor a una cadena en las bases 10, 8, 16 y 2.