ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

INTRODUCCIÓN AL TIPO COMPUESTO CADENA


Enviado por   •  2 de Noviembre de 2012  •  1.355 Palabras (6 Páginas)  •  489 Visitas

Página 1 de 6

1

INTRODUCCIÓN AL TIPO COMPUESTO CADENA

CONTENIDOS

1. Introducción a las cadenas

2. Definición

3. Declaración de cadenas

4. Inicialización de cadenas

5. Escritura y Lectura de datos tipo cadena

6. Funciones de manipulación de cadenas

7. Arrays de cadenas

2

INTRODUCCIÓN AL TIPO COMPUESTO CADENA

Introducción:

Vamos a ver por fin cómo manejar TEXTO en C++, ya que hasta el

momento solo lo hemos mostrado por pantalla mediante la sentencia

cout y el operador de inserción <<.

C++ no tiene como otros lenguajes de programación, un tipo de datos

básico para almacenar texto, como puede ser el tipo string.

C++ utilizará ARRAYS DE CARACTERES para almacenar texto.

void main()

{

cout << “Esto es una cadena de texto”;

}

3

INTRODUCCIÓN AL TIPO COMPUESTO CADENA

Cadenas de Texto: Definición

Una cadena de texto es una secuencia de caracteres. Ejemplos de

cadenas son:

“Don Quijote de la Mancha”

“Hola Mundo”

“Apolo 13”

En C++ una cadena se considera como un array de caracteres terminado

con el carácter nulo ‘\0’.

‘A’ ‘p’ ‘o’ ‘l’ ‘o’ ‘1’ ‘3’ ‘\0’

La cadena de texto “Apolo 13” se almacena así

4

INTRODUCCIÓN AL TIPO COMPUESTO CADENA

Diferencia entre Cadenas de Texto y arrays de caracteres

La principal diferencia entre una cadena y un array de caracteres, es que

una cadena siempre termina con el carácter nulo ‘\0’ y los arrays de

caracteres no.

Como conclusión, podemos decir que

- Todas las cadenas de texto son arrays de caracteres,

- pero, no todos los arrays de caracteres almacenan cadenas.

‘A’ ‘p’ ‘o’ ‘l’ ‘o’ ‘1’ ‘3’ ‘\0’

‘A’ ‘p’ ‘o’ ‘l’ ‘o’ ‘1’ ‘3’

Array de caracteres

de tamaño 8.

Cadena de

de longitud 8.

5

INTRODUCCIÓN AL TIPO COMPUESTO CADENA

Cadenas de Texto: Declaración

Las cadenas de texto se declaran como se declaraban los arrays de

caracteres, indicando el tamaño máximo de la cadena + 1.

char <nombre_de_cadena> [ tamaño_máximo +1 ]; Sintaxis

char cabecera[10];

char nombre[8];

Ejemplos:

La variable cabecera puede contener una

cadena de texto de tamaño máximo 9

o un array de 10 posiciones.

Se declaran de la misma manera, por tanto

la diferencia radica en el uso que se le de a la variable

6

INTRODUCCIÓN AL TIPO COMPUESTO CADENA

Cadenas de Texto: Declaración

Para declarar una cadena capaz de almacenar el texto “Apolo 13”

haremos lo siguiente:

char titulo_pelicula[9];

char titulo_pelicula[10];

char titulo_pelicula[20];

char titulo_pelicula[8];

Es válido cualquiera

de las 3

7

INTRODUCCIÓN AL TIPO COMPUESTO CADENA

Cadenas de Texto: Inicialización

Las cadenas de caracteres no se pueden inicializar fuera de la

declaración.

Inicialización de cadenas en la declaración:

char cadena_texto[20] = “Hola Mundo”;

char saludo[] = “Hola” ;

...

La cadena cadena_texto

puede contener un máximo

de 19 caracteres más el

carácter nulo ‘\0’

El compilador reserva espacio para la cadena saludo.

Dado que el tamaño de hola es 4 caracteres, el compilador reserva 5

Cadena_texto = H o l a M u n d o \0

Saludo = H o l a \0

8

INTRODUCCIÓN AL TIPO COMPUESTO CADENA

Cadenas de Texto: Inicialización

¿Qué ocurría cuando inicializábamos solo algunas componentes de un

array de caracteres como cadena de texto?

Si se trata de inicializar la cadena en el cuerpo del programa de la

siguiente manera, nos dará un error de compilación.

Más adelante veremos que para realizar ésta acción necesitamos recurrir

a funciones de cadena (string.h).

cadena_texto = “Hola Mundo”;

...

Error !!

El compilador no inicializa el resto de elementos con el carácter nulo ‘\0’

Cadena_texto = H o l a M u n d o \0

9

INTRODUCCIÓN AL TIPO COMPUESTO CADENA

Cadenas de Texto: Ejemplos de Inicialización

char cad_uno[20] = “Hola Mundo”;

char cad_dos[20] = {‘H’,’o’,’l’,’a’,’ ‘,’M’,’u’,’n’,’d’,’o’ };

char cad_tres[20] = { “Hola Mundo”};

...

char saludo_uno[] = “Hola” ;

char saludo_dos[] = { “Hola”} ;

...

char saludo_tres[] = {‘H’, ‘o’, ‘l’, ‘a’};

...

saludo_uno = saludo_dos = H o l a \0

saludo_tres = H o l a

cad_uno = cad_tres =

H o l a M u n d o \0

char nombre[4] = “Luis”;

...

L u i s

No podemos tratarlo como

una cadena. Sí como un array

de caracteres.

10

INTRODUCCIÓN AL TIPO COMPUESTO CADENA

Cadenas de Texto: Escritura de cadenas

Para escribir el contenido de una variable de tipo cadena en consola,

utilizamos la sentencia de escritura cout con el operador de inserción <<.

cout escribe todos los caracteres

desde la posición 0 en adelante, hasta

que se encuentre el carácter nulo ‘\0’

char cad_uno[20] = “Hola Mundo”;

char nombre[4] = “Luis”;

cout << cad_uno;

cout << nombre;

cad_uno = H o l a M u n d o \0

… L u i s 6 9 g r t \0 v …

nombre =

En consola aparece: “Hola Mundo”

En consola aparece:

“Luis69grt”

11

INTRODUCCIÓN AL TIPO COMPUESTO CADENA

Cadenas de Texto: Lectura de cadenas

La sentencia de lectura cin con el operador de extracción >> produce

anomalías si se aplica a una variable de tipo cadena.

char nombre[20] ;

cin >> nombre;

...

Descargar como (para miembros actualizados) txt (10 Kb)
Leer 5 páginas más »
Disponible sólo en Clubensayos.com