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

String en C++


Enviado por   •  26 de Noviembre de 2017  •  Apuntes  •  1.240 Palabras (5 Páginas)  •  251 Visitas

Página 1 de 5

como hasta ahora hemos realizado. Tenemos que utilizar obligatoriamente la función strcpy.

  • FUNCIONES        DE        MANEJO        DE CADENAS

  • Estas        funciones,        que        están        en        la        librería ’string.h ' :

  • No realizan reserva dinámica de memoria: Si una función necesita escribir una cadena en un parámetro, ese parámetro debe ser o un vector o un puntero a char inicializado con malloc o realloc.
  • No comprueban los límites de los arrays, asi que es responsabilidad del programador asegurar que los arrays o punteros que se le pasan a estas funciones son lo suficientemente grandes
  • Las funciones más utilizadas son las siguientes:
  • char        *        strcat(        char        *        cadena1,        char        * cadena2)

Concatena (añade al final) una copia de cadena2 en cadena1 y añade al final de cadena1 el carácter    nulo    ’\0'.    El    carácter    nulo    que originalmente tenía cadena1 se sustituye por el


primer carácter de cadena2. La cadena2 no se modifica en esta operación.

La función devuelve la (dirección de) cadena1 modificada por la concatenación.

Ejemplo: Programa que lee dos cadenas, pega la primera a la segunda y muestra el resultado por pantalla.

#include ‹stdio.h> #include ‹string.h> int main ()

{

char cad1[30],cad2[30]; gets(cad1);

gets(cad2); strcat(cad2,cad1); puts(cad2);

}

  • int        strcmp        (const        char*cad1,        const char*cad2)

Compara lexicográficamente, distinguiendo entre minúsculas y mayúsculas, dos cadenas que finalizan con el carácter nulo y devuelve un entero que se interpreta así:


Valor devuelto

Significado

0 ‹ (negativo)

cad1 es menor que cad2

0

cad1 == cad2

> 0 (positivo)

cad1 es mayor que cad2

Las        funciones        stricmp        y        strcmpi:        ignoran        la diferencia entre minúsculas y mayúsculas.

Ejemplo: Programa que verifica la introducción de contraseñas. La palabra clave es “paso". #include ‹stdio.h>

#include ‹string.h>

int claveOK(); //Función booleana int main ()

{

if (claveOK()){

printf("Palabra clave correcta"); return(1);

}

else{

printf("palabra clave invalida\n"); return(0);

}

}

int claveOK()

{

char s[30];

int nIntentos=3; do{

printf("Introduzca una palabra clave: ");


gets(s);

if (strcmp(s,"paso"))

nIntentos--;        //Palabra clave no válida else

break;        //Palabra clave válida

} while(nIntentos>0);

return(nIntentos);

}

  • char *strcpy (char *cad1, const char *cad2)

Copia el contenido de cad2 en cad1, devolviendo cad1. Es lo mas parecido que tiene C a la operación de asignación de una cadena a una variable.

Ejemplo: Programa que copia “hola" en ’cad'

#include ‹stdio.h> #include ‹string.h> int main ()

{

char cad[80]; strcpy(cad,"hola"); puts(cad);

}

  • int strlen (const char *cad1)

Devuelve        el        número        de        caracteres        de        una cadena sin contar el ’\0' final.

  • char *strlwr (char *cad1)


Convierte cad1 a minúculas.

  • char        *strncat        (char*cad1,const char*cad2,int n)

Añade no más de n caracteres (un  carácter nulo y los demás caracteres siguientes no son añadidos) de la cadena apuntada por cad2 al final de la cadena apuntada por cad1. El carácter inicial de cad2 sobrescribe el carácter nulo al final de cad1. El carácter nulo siempre es añadido al resultado.

...

Descargar como (para miembros actualizados) txt (7 Kb) pdf (110 Kb) docx (18 Kb)
Leer 4 páginas más »
Disponible sólo en Clubensayos.com