Lenguajes de programación almacenan datos usando una variedad de diferentes tipos de datos. Un tipo de datos utilizado para almacenar números es el int , que normalmente utiliza ya sea un segmento de memoria de 4 bytes u 8 bytes. Un char es otro tipo de datos ampliamente utilizado que almacena valores en un segmento de memoria de 1 byte . Convertir un int a char puede ser un problema porque no hay espacio suficiente para almacenar todos los bytes de un entero en un char . Sin embargo, puede utilizar varios caracteres para almacenar un único int . Cosas que necesitará
C Compiler , como GCC
C Entorno de desarrollo integrado ( IDE ) , como Eclipse CDT
Mostrar más instrucciones
1
Arranque el IDE y crear un proyecto nuevo. Un archivo de código fuente en blanco se abrirá en el área de trabajo principal .
2
Definir un tipo int que va a convertir a un char, y asignarle un valor. Por ejemplo , escribir algo como esto :
unsigned int numberToConvert = 456734645 ;
3
Imprime el valor de este número en hexadecimal. Va a usar esto para verificar su posterior conversión . Puede imprimir esto escribiendo esta línea justo debajo de la línea anterior :
printf ("% x \\ n", numberToConvert ) ;
4
Averigüe cuántos caracteres puede caber dentro de un tipo int en el equipo. Para ello, escriba lo siguiente:
unsigned int numberOfChars = sizeof (int ) /sizeof (char ) ;
5
Definir los caracteres que llevará a cabo su int . Desde un int es mucho más grande que un char , se debe definir una matriz de caracteres así:
destino sin firmar char [ numberOfChars ] ;
6
Crear una estructura de bucle que se repetirá a través de la int y agregar valores a la charla con cada pasada. El esqueleto del bucle debería tener este aspecto :
for (int i = 0 ; i < numberOfChars , i + +) {
}
< br > 7
Asignar los primeros ocho bits del número entero para el primer carácter de la matriz . Esto sólo funcionará si los bytes son 8 bits en su sistema , que por lo general son . Esta asignación se puede escribir dentro de las llaves del bucle como este :
ruta [ i ] = numberToConvert >> ( 8 * i);
8
Imprime los valores de cada charla en hexadecimal y comprobar que coincide con el valor del número entero . Escriba el siguiente debajo de la línea de código anterior :
printf ("% x \\ n", ruta [ i]) ;
9
Compile y ejecute el programa (algunos IDEs hacer esto cuando se pulse la tecla " F5 ") . Verá que ha convertido con éxito en el int caracteres .