Sei sulla pagina 1di 13

CADENAS

Una cadena de caracteres es un array unidimensional en el cual


todos sus elementos son tipo char.
Ejem.:
char Obs[]=Aprobado; char color[]={g,r,i,s,\0};
0

\0

\0, es el carcter nulo que indica fin de la cadena


char Nombre[30]; // Declara la variable nombre de 30 caracteres

ING. FELIX HUARI

CADENAS
La declaracin anterior de Nombre se
muestra esquemticamente as.
0

29

char producto[25]; // Declara cadena de 25 caracteres


0

24

ING. FELIX HUARI

FUNCIONES DE CADENAS
Las siguientes funciones requieren de la librera stdio.h y
iostream.h
Funcin gets()
gets(c);
Lee una cadena y lo almacena en la variable c.
Funcin puts()
puts(c);
Permite escribir la cadena c, automticamente hace el
cambio de lnea.
Funcin cin.getline()
cin.getline(c,n,\n);
Lee una cadena de n caracteres o hasta que se pulse
la tecla enter y lo almacena en la variable c.
ING. FELIX HUARI

FUNCIONES DE CADENAS
El c++ nos proporcionan muchas funciones
estndares de cadena que nos permite hacer
operaciones con cadenas.
Las siguientes funciones requieren de la librera
string.h
Funcin strcpy()
strcpy(c1,c2);
Permite copiar la cadena c2 en c1, lo cual implica
que el contenido original de c1 se pierde.
char c1[]=Programa;char c2[]=Algoritmos;
strcpy(c1,c2); // el contenido de c1 ser Algoritmos

ING. FELIX HUARI

FUNCIONES DE CADENAS
#include<iostream>
#include<string.h>
using namespace std;
// Funcion principal
int main()
{ char c1[]="Fundamentos";
char c2[]="Teoricos";
cout<<"\nc1="<<c1<<endl;
strcpy(c1,c2);
cout<<"c1="<<c1<<endl;
}
ING. FELIX HUARI

FUNCIONES DE CADENAS
Funcin strcat()
strcat(c1,c2);

Permite concatenar la cadena c2 en c1, es decir


la longitud de la cadena c1 aumentara.
char c1[]=Programa;strcat(c1,Algoritmos);
// el contenido de c1 ser

ING. FELIX HUARI

FUNCIONES DE CADENAS
Funcin strcmp()
strcmp(c1,c2);
Permite comparar la cadena c1 y c2, la funcin puede devolver 0,
si la cadena c1 es igual a c2, 1 si la cadena c1 es mayor que c2 o 1 si la cadena c1 es menor que c2.
#include<iostream>
#include<string.h>
using namespace std;
// Funcion principal
int main()
{ char c2[]="Fundamentos de programacion";
char c1[]="Teoria de grafos"; cout<<endl;
if(strcmp(c1,c2)==0)
cout<<c1<<" es igual a "<<c2<<endl;
else if(strcmp(c1,c2)>0)
cout<<c1<<" es mayor que "<<c2<<endl;
else
cout<<c1<<" es menor que "<<c2<<endl;
}

ING. FELIX HUARI

FUNCIONES DE CADENAS

Funcin strupr()
strupr(c);

Permite convertir la cadena c a maysculas.

Funcin strlwr()
strlwr(c);

Permite convertir la cadena c a minsculas.

ING. FELIX HUARI

FUNCIONES DE CADENAS
Funcin strlen()
strlen(c);

Esta funcin devuelve la longitud de la cadena c.


#include<iostream>
#include<string.h>
using namespace std;
// Funcion principal
int main()
{ char c1[]="Fundamentos de programacion";
int n;

n=strlen(c1);
cout<<"\nLa longitud de c1="<<n<<endl;
}
ING. FELIX HUARI

FUNCIONES DE CADENAS
Las siguientes funciones requieren de la librera
stdlib.h
Funcin atoi()
atoi(c);
Convertir una cadena numrica a un numero entero.

Funcin atol()
atol(c);
Convertir una cadena numrica a un numero entero
largo.
Funcin atof()
atof(c);
Convertir una cadena numrica a un numero flotante.
ING. FELIX HUARI

10

FUNCIONES DE CADENAS
#include<iostream>
#include<stdlib.h>
using namespace std;
// Funcion principal
int main()
{ char c1[]="2456"; int n1;
char c2[]="21475836"; long int n2;
char c3[]="16859.5"; float n3;
n1=atoi(c1); n2=atol(c2);n3=atof(c3);
cout<<"n1="<<n1<<endl;
cout<<"n2="<<n2<<endl;
cout<<"n3="<<n3<<endl;
}

ING. FELIX HUARI

11

FUNCIONES DE CARACTER
Para usar estas funciones se requiere la
librera ctype.h
Funcin tolower()
tolower(c);

Convierte el carcter c de maysculas


minsculas.
Funcin toupper()
toupper(c);
Convierte el carcter c de minsculas
maysculas.

ING. FELIX HUARI

12

VECTOR DE CADENAS
Es posible tambin declarar vector de cadenas, para ello
se agrega una dimensin mas.
char v[30][15];La declaracin anterior del vector de
cadena se mostrara as.
longitud de 15

0
1
2
...

29
ING. FELIX HUARI

13

Potrebbero piacerti anche