char sin firmar en C con ejemplos

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:

  1. carácter firmado
  2. carácter sin firmar

signed-and-unsigned-char-in-C

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: ÿ
    

Publicación traducida automáticamente

Artículo escrito por Code_r y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *