Programación informática - Personajes

Si fuera fácil trabajar con números en la programación de computadoras, sería aún más fácil trabajar con caracteres. Los caracteres son alfabetos simples como a, b, c, d ...., A, B, C, D, ....., pero con una excepción. En programación informática, cualquier número de un solo dígito como 0, 1, 2, .... y caracteres especiales como $,%, +, -.... etc., también se tratan como caracteres y se asignan en un tipo de carácter variable, simplemente debes ponerlos dentrosingle quotes. Por ejemplo, la siguiente declaración define una variable de tipo de carácterch y le asignamos un valor 'a' -

char ch = 'a';

Aquí, ch es una variable de tipo de carácter que puede contener un carácter del conjunto de caracteres de la implementación y 'a' se llama un character literalo una constante de carácter. No solo a, b, c, .... sino cuando cualquier número como 1, 2, 3 .... o cualquier carácter especial como!, @, #, #, $, .... se mantiene entre comillas simples , entonces se tratarán como un carácter literal y se pueden asignar a una variable de tipo carácter, por lo que la siguiente es una declaración válida:

char ch = '1';

Un tipo de datos de caracteres consume 8 bits de memoria, lo que significa que puede almacenar cualquier cosa en un carácter cuyo valor ASCII se encuentre entre -127 y 127, por lo que puede contener cualquiera de los 256 valores diferentes. Un tipo de datos de caracteres puede almacenar cualquiera de los caracteres disponibles en su teclado, incluidos caracteres especiales como!, @, #, #, $,%, ^, &, *, (,), _, +, {,}, Etc.

Tenga en cuenta que solo puede mantener un solo alfabeto o un número de un solo dígito entre comillas simples y no se permiten más de un alfabeto o dígitos entre comillas simples. Entonces, las siguientes declaraciones no son válidas en la programación C:

char ch1 = 'ab';
char ch2 = '10';

A continuación se muestra un ejemplo simple, que muestra cómo definir, asignar e imprimir caracteres en el lenguaje de programación C:

#include <stdio.h>

int main() {
   char  ch1;
   char  ch2;
   char  ch3;
   char  ch4;
   
   ch1 = 'a';      
   ch2 = '1';
   ch3 = '$';
   ch4 = '+';  

   printf( "ch1: %c\n", ch1);
   printf( "ch2: %c\n", ch2);
   printf( "ch3: %c\n", ch3);
   printf( "ch4: %c\n", ch4);
}

Aquí, usamos% c para imprimir un tipo de datos de caracteres. Cuando se ejecuta el programa anterior, produce el siguiente resultado:

ch1: a
ch2: 1
ch3: $
ch4: +

Secuencias de escape

Muchos lenguajes de programación admiten un concepto llamado Escape Sequence. Cuando un carácter está precedido por una barra invertida (\), se denomina secuencia de escape y tiene un significado especial para el compilador. Por ejemplo, \ n en la siguiente declaración es un carácter válido y se denomina carácter de nueva línea:

char ch = '\n';

Aquí, personaje nha sido precedido por una barra invertida (\), tiene un significado especial que es una nueva línea, pero tenga en cuenta que la barra invertida (\) tiene un significado especial con solo unos pocos caracteres. La siguiente declaración no transmitirá ningún significado en la programación en C y se asumirá como una declaración no válida:

char ch = '\1';

La siguiente tabla enumera las secuencias de escape disponibles en el lenguaje de programación C:

Secuencia de escape Descripción
\ t Inserta una pestaña en el texto en este punto.
\segundo Inserta un retroceso en el texto en este punto.
\norte Inserta una nueva línea en el texto en este punto.
\ r Inserta un retorno de carro en el texto en este punto.
\F Inserta un avance de página en el texto en este punto.
\ ' Inserta un carácter de comilla simple en el texto en este punto.
\ " Inserta un carácter de comillas dobles en el texto en este punto.
\\ Inserta un carácter de barra invertida en el texto en este punto.

El siguiente ejemplo muestra cómo el compilador interpreta una secuencia de escape en una declaración de impresión:

#include <stdio.h>

int main() {
   char  ch1;
   char  ch2;
   char  ch3;
   char  ch4;
   
   ch1 = '\t';      
   ch2 = '\n';

   printf( "Test for tabspace %c and a newline %c will start here", ch1, ch2);
}

Cuando se ejecuta el programa anterior, produce el siguiente resultado:

Test for tabspace     and a newline 
will start here

Personajes en Java

A continuación se muestra el programa equivalente escrito en Java. Java maneja los tipos de datos de caracteres de la misma manera que hemos visto en la programación C. Sin embargo, Java proporciona soporte adicional para la manipulación de caracteres.

Puede intentar ejecutar el siguiente programa para ver el resultado, que debe ser idéntico al resultado generado por el ejemplo de C anterior.

public class DemoJava {
   public static void main(String []args) {
      char  ch1;
      char  ch2;
      char  ch3;
      char  ch4;
   
      ch1 = 'a';      
      ch2 = '1';
      ch3 = '$';
      ch4 = '+';  

      System.out.format( "ch1: %c\n", ch1);
      System.out.format( "ch2: %c\n", ch2);
      System.out.format( "ch3: %c\n", ch3);
      System.out.format( "ch4: %c\n", ch4);
   }
}

Cuando se ejecuta el programa anterior, produce el siguiente resultado:

ch1:  a
ch2:  1
ch3:  $
ch4:  +

Java también admite la secuencia de escape de la misma manera que los usó en la programación C.

Personajes en Python

Python no admite ningún tipo de datos de caracteres, pero todos los caracteres se tratan como una cadena, que es una secuencia de caracteres. Estudiaremos las cadenas en un capítulo aparte. No es necesario tener ningún arreglo especial al usar un solo carácter en Python.

A continuación se muestra el programa equivalente escrito en Python:

ch1 = 'a';      
ch2 = '1';
ch3 = '$';
ch4 = '+'; 

print "ch1: ", ch1
print "ch2: ", ch2
print "ch3: ", ch3
print "ch4: ", ch4

Cuando se ejecuta el programa anterior, produce el siguiente resultado:

ch1:  a
ch2:  1
ch3:  $
ch4:  +

Python admite secuencias de escape de la misma manera que las ha utilizado en la programación C.