Descargar

Caracteres y cadenas


Partes: 1, 2

  1. Caracteres y cadenas
  2. Cadenas
  3. (Operaciones con cadenas en el lenguaje C)
  4. Cadenas dinámicas y estáticas
  5. Arreglos
  6. Arreglos unidimensionales y bidimensionales
  7. Bibliografía
  8. Anexos

Caracteres Y Cadenas

En matemáticas o en programación, una cadena de caracteres, palabra o frase (String en inglés) es una secuencia ordenada de longitud arbitraria (aunque finita) de elementos que pertenecen a un cierto alfabeto. En general, una cadena de caracteres es una sucesión de caracteres (letras, números u otros signos o símbolos).

En matemáticas es habitual usar las letras w, x, y,… para referirnos a las cadenas. Por ejemplo, si tenemos un alfabeto S = {a, b, c}, una cadena podría ser: x = aacbbcba.

Desde un punto de vista de la programación, si no se ponen restricciones al alfabeto, una cadena podrá estar formada por cualquier combinación finita de todo el juego caracteres disponibles (las letras de la 'a' a la 'z' y de la 'A' a la 'Z', los números del '0' al '9', el espacio en blanco ' ', símbolos diversos '!', '@', '%', etc.). En este mismo ámbito (el de la programación), se utilizan normalmente como un tipo de dato predefinido, para palabras, frases o cualquier otra sucesión de caracteres. En este caso, se almacenan en un vector de datos, o matriz de datos de una sola fila (array en inglés). Las cadenas se pueden almacenar físicamente:

1. Seguidas.

2. Enlazada letra a letra.

Generalmente son guardados un carácter a continuación de otro por una cuestión de eficiencia de acceso.

Un caso especial de cadena es la que contiene cero caracteres, a esta cadena se la llama cadena vacía.

Cadenas

Las cadenas de caracteres son un tipo especial de arreglo pues se trata de un conjunto de datos de tipo char que termina con un caracter nulo, a este tipo de cadenas también se les conoce como "cadenas". Básicamente el manejo de cadenas es muy similar al de los arreglos.

Ejemplo 1:

edu.red

Imagen 1

Como se muestra en la imagen 1 podemos observar la codificación necesaria de los tipos de datos para la utilización de las cadenas. A continuación el resultado del ejemplo:

edu.red

Imagen 2

La variable cadena es una cadena que puede almacenar hasta seis caracteres, tomando en cuenta que se requiere un espacio para almacenar el caracter nulo al final de la cadena. El símbolo %s mostrado en los enunciados printf( ) le indica al sistema que despliegue una cadena de caracteres empezando con el elemento subíndice cero, que en el código de ejemplo es la letra L, y continuando hasta encontrar el caracter nulo. Observe que en los enunciados printf( ) cuando se indica la variable cadena sin corchetes indica que se despliegue la totalidad de la cadena, en tanto que al indicar la variable cadena con algún valor entre corchetes se refiere a un solo elemento de la cadena, en este caso debemos utilizar en el enunciado printf( ) el símbolo %c que le indica al sistema que despliegue un solo carácter. El símbolo & especifica la dirección en memoria de cadena[3], este símbolo lo estudiaremos mas adelante. A continuación se muestra un ejemplo del manejo de cadenas.

Ejemplo2:

edu.red

Imagen 3

Como puede ver, en la imagen 3 se han definido cuatro arreglos de tipo char de diferente longitud, enseguida nos encontramos con la función strcpy( ) que sirve para copiar la cadena especificada en la segunda entidad dentro del paréntesis de la función en un arreglo de tipo char especificado por la primera entidad dentro del paréntesis de la función strcpy, de esta forma, por ejemplo, la cadena "Pedro Picapiedra" se copia en el arreglo de tipo char llamado cadena1.

Mas adelante en el código nos encontramos con la función strcmp( ) que como es fácil adivinar, sirve para comparar, letra por letra, dos cadenas especificadas dentro del paréntesis. Esta función devuelve 1 si la primera cadena es mayor que la segunda, es decir, si tiene mayor cantidad de letras. Si ambas cadenas son iguales la función devuelve 0, en tanto que si la primera cadena es menor que la segunda entonces el valor devuelto es -1.

Siguiendo en el ámbito de la informática, al considerar las cadenas como un tipo de datos, hay que definir (o conocer) cuales son las operaciones que podemos hacer con ellas, en principio estas podrían ser muchas y llegar a ser muy sofisticadas, pero las que podríamos considerar básicas son:

Concatenación: Consiste en unir dos cadenas o más (o una cadena con un carácter) para formar una cadena de mayor tamaño.

Búsqueda: Consiste en localizar dentro de una cadena una subcadena más pequeña o un carácter.

Extracción: Se trata de sacar fuera de una cadena una porción de la misma según su posición dentro de ella. Se vera a continuación en la imagen 4 el resultado de la imagen 3:

edu.red

Imagen 4

(Operaciones con cadenas en el lenguaje C)

Representación

Partes: 1, 2
Página siguiente