Hoy veremos la operación inversa a convertir un char a un entero en C, es decir, convertir un número entero a su representación en carácter. Por ejemplo, convertir 1 a ‘1’.
Esta conversión no funciona para números mayores a 9, porque ya no tienen un único dígito; para ello mejor podemos ver cómo convertir un número a cadena en C, en lugar de convertirlo a char.
Pero bueno, vamos allá y veamos cómo convertir un dígito entero a carácter en C.
Si ya viste el otro post en donde convertimos un carácter a un entero, sabrás que hacíamos una resta con los números ASCII, porque un carácter se representa también como un entero en esa tabla.
Por ejemplo, el carácter A tiene el número 97 en el código ASCII.
Partiendo de eso, si tenemos un entero, por ejemplo el 1, su representación en el ASCII es el 49, el número 2 tiene el 50 y así sucesivamente.
Entonces para convertir un entero a un carácter, simplemente le sumamos 48, o un ‘0’, el cual es 48 en el ASCII.
Así, si tenemos el número 1 entero y le sumamos 48, se convierte en 49. ¿Y cuál valor representa el 49 en el código ASCII? exacto, el ‘1’. Entonces convertimos 1 a ‘1’, y funciona para cualquier otro número siempre y cuando no sea mayor a 9.
Esta función es simple, de hecho podríamos hacer la conversión sin funciones, pues el código no es largo, pero por simplicidad la escribo aquí:
char enteroACaracter(int numero){
return numero + '0';
}
Recibe un entero, devuelve un carácter. Si le mandas un número mayor a 9 no sé qué pase, pero no será nada bueno.
Para implementar esa función usa este código:
/*
Convertir int a char en C
@author parzibyte
*/#include <stdio.h> // printf
// Prototipo
char enteroACaracter(int numero);
int main(){
int numero = 1;
char comoCaracter = enteroACaracter(numero);
printf("El entero %d se convierte a '%c' como carácter", numero, comoCaracter);
}
char enteroACaracter(int numero){
return numero + '0';
}
Recuerda que puedes ver la operación inversa: char a int en C.
En este post te quiero compartir un código de C++ para listar y cancelar trabajos…
Gracias a WebAssembly podemos ejecutar código de otros lenguajes de programación desde el navegador web…
Revisando y buscando maneras de imprimir un PDF desde la línea de comandos me encontré…
Esta semana estuve recreando la API del plugin para impresoras térmicas en Android (HTTP a…
Hoy te enseñaré a extraer la cadena base64 de una clave PEM usando una función…
Encender un foco con un Bot de Telegram es posible usando una tarjeta como la…
Esta web usa cookies.