char es el tipo de datos más básico en C. Almacena un solo carácter y requiere un solo byte de memoria en casi todos los compiladores.
Ahora el tipo de datos de caracteres se puede dividir en 2 tipos:
- carácter firmado
- carácter sin firmar
Unsigned char es un tipo de datos de carácter donde la variable consume todos los 8 bits de la memoria y no hay ningún bit de signo (que está allí en el carácter firmado). Entonces significa que el rango del tipo de datos char sin firmar va de 0 a 255.
Sintaxis:
unsigned char [variable_name] = [value]
Ejemplo:
unsigned char ch = 'a';
- Inicializar un carácter sin firmar: aquí tratamos de insertar un carácter en la variable de carácter sin firmar con la ayuda del valor ASCII. Entonces, el valor ASCII 97 se convertirá en un valor de carácter, es decir, ‘a’ y se insertará en un carácter sin signo.
// C program to show unsigned char
#include <stdio.h>
int
main()
{
int
chr = 97;
unsigned
char
i = chr;
printf
(
"unsigned char: %c\n"
, i);
return
0;
}
Producción:unsigned char: a
Inicializar un carácter sin firmar con valor con signo: aquí tratamos de insertar un carácter en la variable de carácter sin firmar con la ayuda del valor ASCII. Entonces, el valor ASCII -1 se convertirá primero a un rango de 0 a 255 mediante el redondeo. Por lo tanto, será 255. Ahora, este valor se convertirá en un valor de carácter, es decir, ‘ÿ’ y se insertará en un carácter sin signo.
// C program to show unsigned char
#include <stdio.h>
int
main()
{
int
chr = -1;
unsigned
char
i = chr;
printf
(
"unsigned char: %c\n"
, i);
return
0;
}
Producción:unsigned char: ÿ