5.5.- Funciones para el manejo de cadenas


Como se estableció al principio de esta unidad, el lenguaje C++ no cuenta con algún tipo de dato específico para el manejo de cadenas de caracteres, pero sí cuenta con un grupo de funciones que se han acumulado durante la evolución del Lenguaje C.

Para leer una cadena de caracteres desde el teclado existe la función gets(), y para desplegar una cadena en pantalla se usa la función puts(). Los prototipos de ambas funciones se encuentran declarados en el archivo STDIO.H.

Por ejemplo, el listado 5.5 muestra un programa que sirve para leer y desplegar cadenas de caracteres utilizando las funciones gets() y puts().

  #include <stdio.h>    // Para gets() y puts()
  #include <conio.h>    // Para clrscr() y gotoxy()
  #include <string.h>   // Para strupr() y strlen()

  void main()
  { 
    char nombre[31];   // Declara un arreglo de 31 caracteres  
    char saludo1[] = "กก HOLA,"; //Constante de caracteres
    char saludo2[] = " !!";
    clrscr();                                                  
    gotoxy(20,10);
    puts("¿ Cuál es tu nombre ? "); //Despliega cadena de car.
    gotoxy(45,10);
    gets(nombre);   // Lee cadena de caracteres
    strupr(nombre); // Convierte a mayúsculas
    gotoxy(20,12);
    puts(saludo1);
    gotoxy(30,12);
    puts(nombre);
    gotoxy(30+strlen(nombre),12); // Longitud de la cadena
    puts(saludo2);
  }

Listado 5.5.- Lectura y desplegado de cadenas de caracteres.

Además de las funciones gets() y puts(), existe otro grupo de funciones para el manejo de cadenas de caracteres, como strlen() y strupr() utilizadas en el programa del listado 5.5. Los prototipos de estas funciones se encuentran declarados en el archivo STRING.H En la tabla 5.1 se describen brevemente algunas de las funciones para el manejo de cadenas de caracteres en el C++ de Borland, cuyos prototipos se encuentran declarados en el archivo STRING.H .

FUNCIONDESCRIPCION
stpcpy Copia una cadena de caracteres en otra.Se detiene cuando encuentra el terminador nulo.
strcat Añade una cadena de caracteres a otra.
strchr Busca, en una cadena, un caracter dado.
strcmp Compara dos cadenas.
strcmpi Macro que compara dos cadenas sin distinguir entre mayúsculas y minúsculas.
strcpy Copia una cadena.
strcspn Busca segmentos que no contienen un subconjunto de un conjunto especificado de caracteres.
strdup Copia una cadena a una nueva localidad.
_strerror Genera un mensaje de error definido por el programador.
strerror Retorna el apuntador al mensaje asociado con el valor del error.
stricmp Compara dos cadenas sin diferenciar entre mayúsculas y minúsculas
strlen Determina la longitud de una cadena.
strlwr Convierte las mayúsculas de una cadena en minúsculas.
strncat Añade el contenido de una cadena al final de otra.
strncmp Compara parte de una cadena con parte de otra.
strncmpi Compara parte de una cadena con parte de otra, sin distinguir entre mayúsculas y minúsculas.
strncpy Copia un un número de bytes dados, desde una cadena hacia otra.
strnicmp Compara parte de una cadena con parte de otra, sin distinguir entre mayúsculas y minúsculas.
strnset Hace que un grupo de elementos de una cadena tengan un valor dado.
strpbrk Busca la primera aparición, en una cadena, de cualquier caracter de un conjunto dado.
strrchr Busca la última aparición de un caracter en una cadena.
strrev Invierte el orden de los caracteres de una cadena.
strset Hace que los elementos de una cadena tengan un valor dado.
strspn Busca en una cadena el primer segmento que es un subconjunto de un conjunto de caracteres dado.
strstr Busca en una cadena la aparición de una subcadena dada.
_strtime Convierte la hora actual a una cadena.
strtod Convierte una cadena a un valor double ó long double.
strtol Convierte una cadena a un valor long.
strtoul Convierte una cadena a un valor unsigned long.
strupr Convierte las minúsculas de una cadena a mayúsculas.

Tabla 5.1.- Funciones para el manejo de cadenas de caracteres.

Página anterior Página siguiente