Está en la página 1de 12

Instituto Politécnico Nacional

E.S.I.M.E. Unidad Ticomán

Programación Orientada a Objetos


Profesora: Revilla Aveñado María de Lourdes
Funciones de Cadena de Caracteres (las más utilizadas
de la librería string.h)

Equipo: No. 3
Integrantes del Equipo:
Ramírez Pérez Nahomi Karen
Ramírez Romero Aldo Arturo
Reyes Zendejas Diego Fernando
Sánchez Aguilar Carlos Daniel

Grupo: 2AM2

ciclo escolar: 21/1


Función
Una función es un mini programa dentro de un programa, las funciones contienen varias
sentencias bajo un solo nombre, que un programa puede utilizar una o más veces para
ejecutar dichas sentencias.

Las funciones ahorran espacio reduciendo repeticiones y haciendo más fácil la programación
proporcionando un medio de dividir un proyecto grande en módulos pequeños más
manejables.

Las funciones existen de modo autónomo, cada una tiene su ámbito. Después de que se
escriba, pruebe y depure, se puede utilizar nuevamente una y otra vez. Para reutilizar una
función dentro de su programa, solo se necesita llamar la función.

Cadenas de caracteres
Una de las grandes ventajas de C++ sobre C es el tratamiento del tipo de dato cadena (string)
de caracteres. Una cadena es un valor entre dobles comillas que contiene cualquier
combinación de caracteres, números, espacios y símbolos.

Para utilizar cadenas en C++ se debe incluir en primer lugar el archivo de cabecera string que
define todas las funciones necesarias para su manipulación. #include <string> o #include
<cstring>

Al igual que los tipos de E/S, string está definido en el espacio de nombres std. Para declarar
una variable de tipo cadena requiere un sistema similar a otras variables, pero con la
declaración previa de la biblioteca string.

Sintaxis

string nombreVariable;
nombreVariable = "cadena inicial"
Ejemplo:

#include <iostream>
#include <string.h>

using namespace std;

int main ( )
{
string PrimerNombre, Apellido, NombreCompleto;
Primer nombre= "Luis";
Apellido= "Mackoy";
NombreCompleto= PrimerNombre + " " + Apellido;
cout << "Hola,"<< NombreCompleto << ".\n";
return 0;
}
Funciones
Función strcat ()

strcat () —› char * strcat (char * destino, const char *fuente);

Añade la cadena fuente al final de destino, concatena. Devuelve la cadena destino.

Es indefinido si: las cadenas se superponen la matriz no destino no es lo suficientemente


grande para ingresar la fuente

Ejemplo:

#include <cstring>
#include <iostream>

using namespace std;

int main ()
{
char destino [50] = "Aprender C++ es divertido";
char fuente [50] = " y facil";

strcat (destino, fuente);


cout << destino;
return 0;
}
Función: strchr ()

strchr () —› char*strchr (char* cad, int ch);

Encuentra la primera aparición de ch en cad y duelve un puntero a la primera aparición de c


en cad. Si c no se encuentra, devuelve un cero (NULL).
Ejemplo:

#include <cstring>
#include <iostream>
#include <conio.h>

using namespace std;

int main()
{
char nombre [30];
char ch;
char *ptr;

cout<<"Digite su nombre: ";


cin.getline(nombre,30,'\n');

cout<<"Tecle el primer caracter de la palabra a buscar"<<endl;


cin>>ch;

//Primera
if (strchr(nombre,ch))
cout << ch << " esta presente \"" << nombre << "\""<<endl;
else
cout << ch << " no esta presente \"" << nombre << "\""<<endl;

//Segunda
ptr = strchr(nombre,ch);
cout<<ptr<<endl;

return 0;
}
Función: strcmp ()

strcmp () —› int strcmp (const char *s1, const char *s2);

Compara alfabéticamente dos cadenas de terminación nulas.


El comportamiento d
0 si s1 = s2
< 0 si s1 < s2
> 0 si s1 > s2
Ejemplo:

#include <cstring>
#include <iostream>

using namespace std;

int main ()
{
char s1 [] = "Armstrong";
char s2 [] = "Army";
int result;

result = strcmp (s1, s2);


display (s1, s2, result);

result = strcmp (s1, s1);


display (s1, s1, result);
return 0;
}
void display (char *s1, char *s2, int result)
{
if (result > 0)
cout << s2 << " precedes " << s1 << endl;
else if (result < 0)
cout << s1 << " precedes " << s2 << endl;
else
cout << s1 << " and " << s2 << " are same" << endl;
}
Función: strcpy ()

strcpy () —› char *strcpy (char * destino, const char *fuente);

Copia la cadena fuente a la cadena destino. Devuelve la cadena destino.

Es indefinido si: las cadenas se superponen la memoria asignada para el puntero destino no
es lo suficientemente grande

Ejemplo:

#include <cstring>
#include <isotream>

using namespace std;

int main ()
{
char fuente [] = “Hola programador.”;
/* para no tener problemas de que nos quede indefinido *\
char destino [20];

strcpy (destino, fuente=;


cout << destino;
return 0;
}
Función strlen ()

strlen () —› size_t strlen (const char* s1);

Devuelve la longitud de la cadena s1

Ejemplo:

#include <cstring>
#include <iostream>
#include <stdlib.h>

using namespace std;

int main ()
{
char s[13] = “Hola a todos”;

cout << “\n Cadena (s) = “<< s;


cout << “\n Longitud de la cadena (s) = “<< strlen (s) << “\n”;

system (“pause”);
return 0;
}
Función strncat ()

strncat () —› char* strncat (char* dest, const char* src, size_t count);

Agrega una porción de una cadena a otra.

Ejemplo:

#include<iostream>
#include<conio.h>
#include<string.h>
#include<stdlib.h>

using namespace std;

int main(void)
{
char destination[23];
char *source=" Mexicana";

strcpy(destination,"Cinematografia");
strncat (destination, source, 9);

cout<<destination<<"\n";
system("PAUSE");
getch();
}
Función: strspn ()

strspn () —› size_t strspn (const char *s1, const char *s2);

Devuelve el número máximo de caracteres pertenecientes a la cadena s2 que


consecutivamente están en la cadena s1.

Ejemplo:

#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <iostream>

using namespace std;

int main ()
{
int ejemplo;
char texto[] = "129th";
char set[] = "1234567890";

ejemplo = strspn (texto,set);

cout << "El numero inicial tiene "<<ejemplo<<" digitos del set establecido \n";
system ("pause");
return 0;
}
Función: strstr ()

strstr () —› char * strstr (const char *s1, const char *s2);

Busca la cadena s2 en s1 y devuelve un puntero a los caracteres donde se encuentra s2.

Ejemplo:

#include<iostream>
#include<conio.h>
#include<string.h>
#include<stdlib.h>

using namespace std;

int main(void)
{
char *str1="La foca asesina", *str2="asesina", *ptr;

ptr = strstr (str1, str2);


cout<<"La sabcadena es: "<<ptr<<"\n";
system ("PAUSE");

}
Función: strcspn ()

strcspn () —› size_strcspn (const char *cad1, const char *cad2);

Localiza la posición de la primera aparición en una cadena de cualquier carácter de otra


cadena. Si tiene éxito, la función strcspn devuelve el índice del primer carácter de cad1, que
pertenece al conjunto de caracteres de cad2.

Ejemplo:

#include <cstring>
#include <iostream>
#include <conio.h>

using namespace std;

int main()
{
char nombre[30];
char ch[10];
char *ptr;

cout<<"Digite su nombre: ";


cin.getline(nombre,30,'\n');

cout<<"Tecle el caracter a buscar"<<endl;


cin>>ch;

size_t result = strcspn(nombre,ch);


if(result<strlen(nombre))
cout << "El caracter "<<ch<<"se encuentra dentro de la cadena "<<nombre<<"en la
posición"<<result+1<<endl;

else
cout<<"nada"<<endl;

return 0;
}

También podría gustarte