Вы находитесь на странице: 1из 11

Aguascalientes, Ags 15/03/17

ProgramacIn

OrIentada a

Objetos

Adn Licea Gmez

Conalep I Prof. J. Refugio Esparza Reyes

Docente: Yolanda Navarrete Baes

Materia: Programacin Orientada a Objetos


INDICE

Pagina 1: generador de nmeros aleatorios y libreras

Pagina 3: Librera String y sus funciones.

Pagina 7 : manejo de cadenas.

Pagina 8: programa.
Probablemente te has dado cuenta de que en C, al usar la funcin rand() de la biblioteca
estndar, se obtienen resultados decepcionantes, y casi siempre los mismos.

Por ejemplo, si queremos generar 5 nmeros aleatorios uno detrs de otro:

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

int main()
{
int i;
for(i=0; i<5; i++)
{
printf("%d\n", rand());
}
return 0;
}

LIBRERIAS

o fstream:

Flujos hacia/desde ficheros. Permite la manipulacin de archivos desde


el programar, tanto leer como escribir en ellos.

o iosfwd:

Contiene declaraciones adelantadas de todas las plantillas de flujos y


sus typedefs estndar. Por ejemplo ostream.

o iostream:

Parte del a STL que contiene los algoritmos estndar, es quiz la ms


usada e importante (aunque no indispensable).

o La biblioteca list:

Parte de la STL relativa a contenedores tipo list; listas doblemente


enlazadas

o math:

Contiene los prototipos de las funciones y otras definiciones para el uso


y manipulacin de funciones matemticas.

o memory:
Utilidades relativas a la gestin de memoria, incluyendo asignadores y
punteros inteligentes (auto_ptr).

"auto_ptr" es una clase que conforma la librera memory y permite un


fcil manejo de punteros y su destruccin automaticamente.

o Biblioteca new:

Manejo de memoria dinmica

o numeric:

Parte de la librera numrica de la STL relativa a operaciones numricas.

o ostream:

Algoritmos estndar para los flujos de salida.

o queue:

Parte de la STL relativa a contenedores tipo queue (colas de objetos).

o Librera stdio:

Contiene los prototipos de las funciones, macros, y tipos para manipular


datos de entrada y salida.

o Librera stdlib:

Contiene los prototipos de las funciones, macros, y tipos para utilidades


de uso general.

o string:

Parte de la STL relativa a contenedores tipo string; una generalizacin


de las cadenas alfanumricas para albergar cadenas de objetos. Muy
til para el fcil uso de las cadenas de caracteres, pues elimina muchas
d elas dificultades que generan los char

o typeinfo:

Mecanismo de identificacin de tipos en tiempo de ejecucin

o vector:
Parte de la STL relativa a los contenedores tipo vector; una
generalizacin de las matrices unidimensionales C/C++

o forward_list

Esta librera es til para implementar con gran facilidad listas enlazadas
simples.

o list

Permite implementar listas doblemente enlzadas (listas enlazadas


dobles) facilmente.

o iterator

Proporciona un conjunto de clases para iterar elementos.

o regex

Proporciona fcil acceso al uso de expresiones regulares para la


comparacin de patrones.

o thread

til para trabajar programacin multihilos y crear mltiples hilos en


nuestra aplicacin.

String

string.h es un archivo de la Biblioteca estndar del lenguaje de programacin C que contiene


la definicin de macros, constantes, funciones y tipos y algunas operaciones de manipulacin
de memoria.
Las funciones declaradas en string.h se han hecho muy populares, por lo que estn
garantizadas para cualquier plataforma que soporte C. Sin embargo, existen algunos
problemas de seguridad con estas funciones, como el desbordamiento de buffer (buffer
overflow), que hacen que algunos programadores prefieran opciones ms seguras frente a la
portabilidad que estas funciones ofrecen. Adems, las funciones para cadenas de caracteres
slo trabajan con conjuntos de caracteres ASCII o extensiones ASCII compatibles.
Funciones

strcpy: La funcin strcpy se encuentra en la biblioteca <string.h> y se


utiliza para copiar una cadena de caracteres (fuente) en el lugar que
ocupaba otra (destino). Esta copia es destructiva, o sea, que todos los
caracteres que estaban en la cadena destino desaparecen, aunque la
cadena destino fuera ms larga que la cadena fuente .La cadena destino
se pone como primer argumento de la funcin y la cadena fuente como
segundo. Vamos a verlo con un ejemplo.
#include<stdio.h>
#include<string.h>

int main()
{
char texto1[]="corta";
char texto2[]="mediana";
char texto3[]="larguisima";

strcpy(texto2,texto1);
printf("%s\n",texto2);
strcpy(texto2,texto3);
printf("%s\n",texto2);
getch();
return 0;
}

Resultado:

strcat: En el programa anterior vimos que la funcin strcpy es


desctructiva, pero hay otra funcin en la librera <string.h> que copia
una cadena (fuente) en otra (destino) sin destruir sta, es decir, que
copia una cadena detrs de la otra esta funcin es conocida como strcat.
Vamos a hacer un ejemplo:

#include<stdio.h>
#include<string.h>
int main()
{
char texto1[]="Don Pepito";
char texto2[]=" y ";
char texto3[]="Don Jose";printf("%s\n",texto1);

strcat(texto1,texto2);
printf("%s\n",texto2);
strcat(texto1,texto3);
printf("%s\n",texto2);
getchar();
return 0;
}

Resultado:

strlen: esta funcin devuelve el total (entero) de caracteres que


conforman una cadena (excluyendo el caracter nulo \0). Vamos a hacer
un ejemplo:
#include <stdio.h>
#include <string.h>
#include <conio.h>
#define MAXLON 80

int main(void)
{
char a[MAXLON+1];
int longitud;

clrscr();
printf ("Introduce una cadena (max. %d caracteres): ", MAXLON);
scanf("%s",&a);
longitud = strlen(a);
printf ("\nLongitud de la cadena: %d\n", longitud);
getch();
return 0;
}

Resultado:

strcmp: strcmp (abreviatura de ((string comparison))). La funcin


strcmp recibe dos cadenas, a y b, devuelve un entero. El entero que
resulta de efectuar la llamada strcmp(a, b) codifica el resultado de la
comparacin:

es menor que cero si la cadena a es menor que b,

es 0 si la cadena a es igual que b, y

es mayor que cero si la cadena a es mayor que b.

Naturalmente, menor significa que va delante en orden alfabtico, y


mayor que va detrs.
#include <stdio.h>
#include <string.h>
int main()
{
char s1[6] = "Abeja";
char s2[6] = "abeja";
int i;

printf( "s1=%s\t", s1 );
printf( "s2=%s\n", s2 );
i = strcmp( s1, s2 );
printf( "s1 es " );
if( i < 0 ) printf( "menor que" );
else if( i > 0 ) printf( "mayor que" );
else printf( "igual a" );
printf( " s2\n" );

return 0;
}

Resultado:

#include <iostream.h> contador++;


#include <conio.h> system(cls);
#include <stdio.h> }
void limpiar(); while (opcion == 1 && contador < 3);
void limpiar_salto(char *); system(cls);
struct ALUMNOS cout<<\n Alumnos que estan registrados: \n\n;
{ for ( int x=0; x<contador; x++ )
char nombre[10]; {
char apellido[15]; cout<<A[x].nombre<< <<A[x].apellido<<
char direccion[20]; <<A[x].direccion<< <<A[x].edad<<\n\n;
int edad; }
}A[3]; getch();
main() }
{ void limpiar()
int opcion, contador=0; {
do char c;
{ do { c = getchar(); /*cout<<c->\'<<c<<\'<<endl;*/ }
cout<<\n\n Llene los datos del alumno: while( c!=\n );
<<(contador+1)<<\n\n\n }
<<\n Nombre: ; void limpiar_salto(char *viene)
fgets(A[contador].nombre ,9 + 1, stdin); {
limpiar_salto(A[contador].nombre); char *p;
limpiar(); p = strchr(viene,\n);
cout<<\n\n Apellido: ; if (p) { *p=\ 0; }
fgets(A[contador].apellido ,14 + 1, stdin); }
limpiar_salto(A[contador].apellido);
limpiar();
cout<<\n\n Direccion: ;
fgets(A[contador].direccion ,19 + 1, stdin);
limpiar_salto(A[contador].direccion);
limpiar();
cout<<\n\n Edad: ;
cin>>A[contador].edad;
cout<<\n\n :: desea ingresar otro alumno? ( 1-> SI | 2->
NO ) :: ;
cin>>opcion;

Вам также может понравиться