Está en la página 1de 9

Lenguajes de Programación

Fecha: 25/09/2017

UNIDAD IV: TIPOS ESTRUCTURADOS DE DATOS

a. Cadenas
b. Arreglos de Cadenas

OBJETIVOS PARTICULARES
- Analizar los tipos de estructuras de datos de programación estructurada utilizadas para
el almacenamiento de información.

- Crear estructuras de datos propias que almacenen información y simulen una base de
datos.

BIBLIOGRAFIA
 Enciclopedia del Lenguaje C – Francisco Javier Ceballos, Cap 5
 Fundamentos de Programación, Piensa en C – Osvaldo Cairó, Cap 7
 Curso de programacion C/C++ - Francisco Javier Ceballos, Cap 6

*********
Recordemos algunos conceptos de la clase anterior:

Puntero: Es una variable que contiene la dirección de memoria de un dato o de otra variable
que contiene al dato.

Declaración: Tipo *variable-puntero;

int *pint; /* pint es un puntero a un entero */

char *pnombre; /*pnombre es un puntero a una cadena de caracteres */

Dirección e Indirección

 El operador de dirección “&” . Devuelve como resultado la dirección de su operando.


 El operador de indirección “*” . Toma su operando como una dirección y nos da como
resultado su contenido.

UNIDAD 4: TIPOS ESTRUCTURADOS DE DATOS 1


Lenguajes de Programación

Cadena de Caracteres
Los datos que una computadora puede procesar se clasifican en simples y estructurados. Esta
clasificación se origina en el número de celdas o casillas de memoria que se necesitan para
almacenar un dato. Los datos simples tienen la particularidad de ocupar una sola casilla —
posición— de memoria. Los enteros, los reales y los caracteres son ejemplos de tipos de datos
simples.

Por otra parte, los datos estructurados ocupan un grupo de casillas de memoria. Un dato
estructurado tiene varios componentes, que pueden ser tipos de datos simples, o bien,
estructurados. Los componentes del nivel más bajo de un tipo estructurado son siempre tipos
de datos simples.

Los arreglos, los registros y las cadenas de caracteres son ejemplos de tipos de datos
estructurados.

Un caracter es un tipo de dato simple que representa un número, una letra o cualquier
caracter especial, éste siempre se debe escribir entre apóstrofos ‘ ‘ cuando lo asignamos a
una variable.

En C, las cadenas son arreglos de caracteres en la que todos sus elementos son de tipo char.
Una cadena, también llamada string, es un tipo especial de array unidimensional. Una
cadena es un array de caracteres (char) que termina con un carácter especial (el carácter
‘\0’). Es por ello, que la declaración de una cadena de caracteres se realiza exactamente
igual que la declaración de un array unidimensional de caracteres:

char cadena[tamaño];

Este ejemplo define el array de caracteres cadena con cinco elementos (cadena[0] a
cadena[4]) y asigna al primer elemento el carácter 'a', al segundo el carácter 'b', al tercero
el carácter 'c', al cuarto el carácter 'd' y al quinto el carácter nulo (valor ASCII 0 o secuencia
de escape \0), con el que C finaliza todas las cadenas de caracteres. Observe que el
carácter nulo de terminación lo añade C automáticamente, por lo tanto no es necesario
especificarlo en la inicialización.

Puesto que cada carácter es un entero entre 0 y 255, podemos definir el siguiente arreglo :

UNIDAD 4: TIPOS ESTRUCTURADOS DE DATOS 2


Lenguajes de Programación

Esto es así porque un


array de caracteres
es un array de
enteros (los datos de tipo char son un subconjunto de los enteros); cada carácter tiene
asociado un entero entre 0 y 255.

(La llamada a printf con la especificación de formato %s permite visualizar la cadena. Se visualizan todos los
caracteres que hay desde el primero hasta el carácter nulo. Esto es, una función capaz de manipular una cadena
sabe dónde empieza por el nombre del array y sabe que termina en el primer carácter nulo que encuentre según
avance sobre la misma, byte a byte.)

Si la cadena asignada es más corta que el tamaño del array de caracteres, el resto de los
elementos del array son inicializados con caracteres nulos.

Puntero a cadena
La forma de definir un puntero a una cadena de caracteres es:
El identificador del array de caracteres es la dirección de comienzo del array y para que una
función manipuladora de una cadena de caracteres pueda saber dónde finaliza dicha
cadena, el compilador añade al final de la cadena el carácter \0.

UNIDAD 4: TIPOS ESTRUCTURADOS DE DATOS 3


Lenguajes de Programación

*********
En el siguiente programa podemos observar diferentes maneras para declarar cadenas de
caracteres y asignarles valores. Estudiaremos las funciones de entrada y salida de la biblioteca
<stdio.h> : gets, scanf, puts y printf.

UNIDAD 4: TIPOS ESTRUCTURADOS DE DATOS 4


Lenguajes de Programación

UNIDAD 4: TIPOS ESTRUCTURADOS DE DATOS 5


Lenguajes de Programación

UNIDAD 4: TIPOS ESTRUCTURADOS DE DATOS 6


Lenguajes de Programación

Analizaremos los siguientes ejemplos correctos e incorrectos

UNIDAD 4: TIPOS ESTRUCTURADOS DE DATOS 7


Lenguajes de Programación

UNIDAD 4: TIPOS ESTRUCTURADOS DE DATOS 8


Lenguajes de Programación

UNIDAD 4: TIPOS ESTRUCTURADOS DE DATOS 9

También podría gustarte