Arreglos y cadenas de texto Programación 1 Curso: 5to. I
Cadena de texto Cadena de texto: es un arreglo de caracteres, e.j. char cadena[12]; Excepción: Por comodidad, la constante tipo cadena en C, en vez de char x[]={'H','i','\0'}; se usa char x[]="Hi"; Fin-de-cadena (eos): El tamaño del arreglo, cadena, debe considerar un espacio adicional al final del arreglo para colocar un eos, i.e. caracter '\0'
Cadena de texto En el caso especial de los arrays de caracteres, podemos utilizar varias formas de inicialización: char cadena[] = "Hola"; char cadena[] = {'H','o','l','a',0}; char cadena[] = {'H','o','l','a','\0'}; sin especificar el tamaño de la cadena, o especificando el tamaño: char cadena[5] = "Hola"; char cadena[5] = {'H','o','l','a',0}; char cadena[5] = {'H','o','l','a','\0'};
Cadena de texto Para acceder a un elemento de una cadena de caracteres puede hacerse de la misma manera que el acceso al elemento de un array, por ejemplo:
Librería Cadenas string.h Dado que no existen operadores para arreglos y cadenas, existe la librería <string.h> para copiar, comparar y procesar cadenas en general en C.
Ejemplo 1 Arreglo de caracteres #include <stdio.h> #include <stdlib.h> #include<string.h> int main() { char cadena1[4]; cadena1[0]='h'; cadena1[1]='o'; cadena1[2]='l'; cadena1[3]='a'; printf("La palabra en la variable cadena1 es: %c%c%c%c \n", cadena1[0],cadena1[1],cadena1[2],cadena1[3]); }
Ejemplo 2 Arreglo de caracteres #include <stdio.h> #include <string.h> Int main() { char nombre[20]; printf( "Introduzca su nombre (20 letras maximo): " ); scanf( "%s", nombre ); printf( "\nEl nombre que ha escrito es: %s\n", nombre ); }