SlideShare una empresa de Scribd logo
1 de 30
CENTROS DE ESTUDIOS
TECNOLOGICOS
INDUSTRIAL Y DE
SERVICIO
IDALIA GPE TRISTÁN SÁNCHEZ
CARLOS OZIEL SOLIS JUAREZ
MARGARITA ROMERO ALVARADO
DESARROLLO DE SOFTWARE UTILIZANDO PROGRAMACIÓN
BÁSICA
2.A PROGRAMACIÓN
¿Qué son exactamente las librerías?
 En C++, se conoce como librerías (o bibliotecas) a cierto
tipo de archivos que podemos importar o incluir en
nuestro programa. Estos archivos contienen las
especificaciones de diferentes funcionalidades ya
construidas y utilizables que podremos agregar a nuestro
programa, como por ejemplo leer del teclado o mostrar
algo por pantalla entre muchas otras más.
¿Qué son exactamente las librerías?
 Al poder incluir estas librerías con definiciones de
diferentes funcionalidades podremos ahorrarnos gran
cantidad de cosas, imaginemos por ejemplo que cada
vez que necesitemos leer por teclado, debamos
entonces crear una función que lo haga (algo realmente
complejo), al poder contar con las librerías en C++,
podremos hacer uso de una gran variedad de funciones
que nos facilitaran la vida y aumentarán la modularidad
de nuestros códigos.
Biblioteca Matematica.
 Los operadores "<<" representarían el agua, y la dirección en
que se mueve. Cualquier cosa que soltemos en el agua:
"hola", " " o endl, seguirá flotando hasta llegar a la pantalla, y
además mantendrán su orden.
En esta biblioteca se definen algunas de las funciones
aplicables a los "streams", pero aún no estamos en
disposición de acceder a ellas.
Biblioteca Matematica.
Baste decir de momento que existen cuatro "streams"
predeterminados:
cin, canal de entrada estándar.
cout, canal de salida estándar.
cerr, canal de salida de errores.
clog, canal de salida de diario o anotaciones.
BIBLIOTECA DE NUMEROS
ALEATORIOS
Contiene tipos, macros y funciones para la
conversión numérica, generación de
números aleatorios, búsquedas y
ordenación, gestión de memoria y tareas
similares. Los números aleatorios son
útiles en programas que necesitan simular
eventos aleatorios, tales como juegos,
simulaciones y experimentos. En la
práctica ninguna función produce datos
aleatorios verdaderos
BIBLIOTECA GRAFICA
El lenguaje C no provee de herramientas para realizar salida
gráfica en un programa. Sin embargo existen una infinidad de
bibliotecas, realizadas por terceros que proveen de estas
facilidades. Dadas las peculiaridades de cada sistema operativo
para manipular el entorno gráfico, es muy difícil mantener la
portabilidad de un programa cuando se utilizan rutinas de
graficación.
BIBLIOTECA GRAFICA
EJEMPLO
#include <stdio.h> /* el header genérico de la biblioteca */
#include <g2.h> /* el header específico para manipular ventanas de X11 */
#include <g2_X11.h>
int main()
{
int d; /* para identificar el dispositivo */
d = g2_open_X11(100,100); /* abre una ventana de 100 x 100, referenciada por d */
g2_line(d, 10, 10, 90, 90); /* dibuja una linea desde (10,10) hasta (90,90) */
getchar(); /* espera antes de cerrar la ventana */
g2_close(d); /* cierra el dispositivo (ventana) */
return 0; }
BIBLIOTECA DEFINIDA POR EL
PROGRAMADOR
Las funciones que se han utilizado hasta ahora son funciones
que el lenguaje de programación ha predefinido en sus
bibliotecas o librerías. Sin embargo, también es posible que el
programador defina y utilice sus propias funciones.
BIBLIOTECA DEFINIDA POR EL
PROGRAMADOR
Las funciones definidas por el programador se escriben “fuera”
de la función main. Si se recuerda, uno de los objetivos del uso
de las funciones es la descomposición de problemas complejos
y el trabajo en grupo. El siguiente es un ejemplo de una
definición de una función. Se utiliza antes de presentar la
sintaxis formal de modo que nos podamos familiarizar con la
terminología.
BIBLIOTECA DEFINIDA POR EL
PROGRAMADOR
Return cuadrado; El valor de dicha variable (o el valor de dicha
constante) constituye el valor de regreso de la función. El tipo
del valor que regresa la función debe ser consistente con el tipo
del valor de regreso especificado en el encabezado de la
función. Observe que, en este ejemplo, el valor de regreso de la
función (tipo de la variable llamada cuadrado) es doublé, al
igual que el tipo de valor de regreso especificado en el
encabezado.
Uso de Funciones Definidas por el
Programador
Algo similar es necesario para funciones definidas por el
programador. Ese algo es que, después de las
directivas include pero antes de la función main, es necesario
escribir el prototipo de la función. El prototipo de la función no
es más que el encabezado de la función seguido de punto y
coma. El siguiente ejemplo muestra como se podría utilizar en
un programa una función definida por el programador.
Uso de Funciones Definidas por el
Programador
EJEMPLO
#include <iostream.h> #include <stdlib.h>
double square(double numero); int main()
/* Prototipo de la funcion*/
{
}
/* Este programa es solo un ejemplo de la definicion y uso de una funcion definida por el programador*/
double x,y,z; cin>>x>>y;
z = square(x);/* Llamado a la funcion*/ z = z * y;
cout<<"n"; cout<<z; cout<<"n";
system("PAUSE"); return 0;
/* Esta funcion calcula el cuadrado de un numero*/ double square(double numero)
{
double cuadrado;
cuadrado = numero * numero; return cuadrado;
{
Bibliotecas o librerías en C++
 Junto con los compiladores de C y C++, se incluyen
ciertos archivos llamados bibliotecas mas
comúnmente librerías. Las bibliotecas contienen el
código objeto de muchos programas que permiten
hacer cosas comunes, como leer el teclado, escribir
en la pantalla, manejar números, realizar funciones
matemáticas, etc.
Bibliotecas o librerías en C++
• Las bibliotecas están clasificadas por el tipo de
trabajos que hacen, hay bibliotecas de entrada y
salida, matemáticas, de manejo de memoria, de
manejo de textos y como imaginarás existen
muchísimas librerías disponibles y todas con una
función especifica.
Sintaxis para declarar Librerías en
C++
• La sintaxis es la siguiente: #include <nombre de la
librería> o alternativamente #include "nombre de la
librería". Cualquiera de las 2 formas es válida en C++
(no estoy seguro si en C sea válido), ten en cuenta que
siempre el nombre de la librería debe ir entre " y " o
entre < y >. En tu código puedes declarar todas las
librerías que quieras aunque en realidad no tienen
sentido declarar una librería que no vas a usar en tu
programa, sin embargo no existe límite para esto.
Librerías Estándar de C++
(Standar Template Library o STL
A continuación pondré algunas de las librerías de uso más
común de C++ y que forman parte de las librerías estándar
de este lenguaje.
 fstream:Flujos hacia/desde ficheros. Permite la
manipulación de archivos desde el programar, tanto leer
como escribir en ellos.
 iosfwd:Contiene declaraciones adelantadas de todas las
plantillas de flujos y sus typedefs estándar. Por ejemplo
ostream.
Librerías Estándar de C++
(Standar Template Library o STL
 math:Contiene los prototipos de las funciones y otras
definiciones para el uso y manipulación de funciones
matemáticas.
 memory:Utilidades relativas a la gestión de memoria,
incluyendo asignadores y punteros inteligentes
(auto_ptr).
 "auto_ptr" es una clase que conforma la librería memory
y permite un fácil manejo de punteros y su destrucción
automáticamente.
Librerías Estándar de C++
(Standar Template Library o STL
 Biblioteca new:Manejo de memoria dinámica
 numeric:Parte de la librería numérica de la STL relativa
a operaciones numéricas.
 ostream:Algoritmos estándar para los flujos de salida.
Librerías Estándar de C++
(Standar Template Library o STL
 iostream:Parte del a STL que contiene los
algoritmos estándar, es quizá la más usada e
importante (aunque no indispensable).
 La biblioteca list:Parte de la STL relativa a
contenedores tipo list; listas doblemente enlazadas
 queue:Parte de la STL relativa a contenedores tipo
queue (colas de objetos).
Librerías Estándar de C++
(Standar Template Library o STL
 Librería stdio:Contiene los prototipos de las funciones,
macros, y tipos para manipular datos de entrada y salida.
 Librería stdlib:Contiene los prototipos de las funciones,
macros, y tipos para utilidades de uso general.
 string:Parte de la STL relativa a contenedores tipo
string; una generalización de las cadenas alfanuméricas
para albergar cadenas de objetos. Muy útil para el fácil
uso de las cadenas de caracteres, pues elimina muchas
d elas dificultades que generan los char
Librerías Estándar de C++
(Standar Template Library o STL
 vector:Parte de la STL relativa a los contenedores tipo
vector; una generalización de las matrices
unidimensionales C/C++
 forward_listEsta librería es útil para implementar con
gran facilidad listas enlazadas simples.
 listPermite implementar listas doblemente enlzadas
(listas enlazadas dobles) facilmente.
Librerías Estándar de C++
(Standar Template Library o STL
 iteratorProporciona un conjunto de clases para
iterar elementos.
 regexProporciona fácil acceso al uso de
expresiones regulares para la comparación de
patrones.
 threadÚtil para trabajar programación multihilos y
crear múltiples hilos en nuestra aplicación
Acerca del namespace std
 El espacio de nombre std como tal no es una librería
sino simplemente un namespace, por esta razón no
reemplaza la declaración de las librerías del código,
simplemente facilita la escritura de éste al momento
de usar las entidades de las librerías estándar.
Acerca del namespace std
• Sin embargo si vamos a hacer uso de una o varias
librerías estándar de C++ es recomendable que
declaremos el namespace std, para no tener que
estar constantemente escribiendo cosas similares a
las que puse hace unas líneas como std::cin o
similares, dado que únicamente se puede acceder a
la entidades de las librerías estándar por medio del
espacio nombre std.
Ejemplo de librerías en C++
Conclusión
 Las librearías son archivos (no siempre externos) que nos
permiten llevar a cabo diferentes tareas sin necesidad de
preocuparnos por cómo se hacen sino simplemente
entender cómo usarlas. Las librearías en C++ permiten
hacer nuestros programas más modulares y reutilizables,
facilitando además crear programas con funcionalidades
bastante complejas en unas pocas líneas de código.
Opinión
 En C++, la biblioteca estándar es una colección de Clases y
funciones, escritas en el núcleo del lenguaje. La biblioteca
estándar proporciona varios contenedores genéricos,
funciones para utilizar y manipular esos contenedores,
funciones objeto, cadenas y flujos genéricos (incluyendo E/S
interactiva y de archivos) y soporte para la mayoría de las
características del lenguaje.
Referencia
 https://www.programarya.com/Cursos/C++/Bibliotecas-O-Librerias
 https://mx.answers.yahoo.com/question/index?qid=20110703184412AA1fMNf
 https://es.wikipedia.org/wiki/Biblioteca_estándar_de_C%2B%2B

Más contenido relacionado

La actualidad más candente

La actualidad más candente (16)

Bibliotecas de c++
Bibliotecas de c++Bibliotecas de c++
Bibliotecas de c++
 
Bibliotecas que existen_para_c++_ (2)
Bibliotecas que existen_para_c++_ (2)Bibliotecas que existen_para_c++_ (2)
Bibliotecas que existen_para_c++_ (2)
 
BIBLIOTECAS QUE EXISTEN PARA C++
BIBLIOTECAS QUE EXISTEN PARA C++BIBLIOTECAS QUE EXISTEN PARA C++
BIBLIOTECAS QUE EXISTEN PARA C++
 
BIBLIOTECAS QUE EXITEN PARA C++
BIBLIOTECAS QUE EXITEN PARA C++BIBLIOTECAS QUE EXITEN PARA C++
BIBLIOTECAS QUE EXITEN PARA C++
 
Tutorial C++
Tutorial C++Tutorial C++
Tutorial C++
 
Bibliotecas en c
Bibliotecas en cBibliotecas en c
Bibliotecas en c
 
Archivos de Cabecera.
Archivos de Cabecera.Archivos de Cabecera.
Archivos de Cabecera.
 
Bibliotecas existentes para_c_
Bibliotecas existentes para_c_Bibliotecas existentes para_c_
Bibliotecas existentes para_c_
 
Ficheros de cabecera
Ficheros de cabecera Ficheros de cabecera
Ficheros de cabecera
 
Libreria c++
Libreria c++Libreria c++
Libreria c++
 
C++
C++C++
C++
 
Las bibliotecas que_existen_para_c_(2)
Las bibliotecas que_existen_para_c_(2)Las bibliotecas que_existen_para_c_(2)
Las bibliotecas que_existen_para_c_(2)
 
Jorge salazar 4 to b xd
Jorge salazar 4 to b xdJorge salazar 4 to b xd
Jorge salazar 4 to b xd
 
Estructura basica para_c_
Estructura basica para_c_Estructura basica para_c_
Estructura basica para_c_
 
C++ y sus librerias
C++ y sus libreriasC++ y sus librerias
C++ y sus librerias
 
Centro de estudios_tecnologicos_industrial_y_de_servicios
Centro de estudios_tecnologicos_industrial_y_de_serviciosCentro de estudios_tecnologicos_industrial_y_de_servicios
Centro de estudios_tecnologicos_industrial_y_de_servicios
 

Destacado

2015 Upload Campaigns Calendar - SlideShare
2015 Upload Campaigns Calendar - SlideShare2015 Upload Campaigns Calendar - SlideShare
2015 Upload Campaigns Calendar - SlideShareSlideShare
 
What to Upload to SlideShare
What to Upload to SlideShareWhat to Upload to SlideShare
What to Upload to SlideShareSlideShare
 
Getting Started With SlideShare
Getting Started With SlideShareGetting Started With SlideShare
Getting Started With SlideShareSlideShare
 

Destacado (9)

Operadores de c++
Operadores de c++Operadores de c++
Operadores de c++
 
Tablas de verdad_para_C++
Tablas de verdad_para_C++Tablas de verdad_para_C++
Tablas de verdad_para_C++
 
Instrucciones basicas de C++
Instrucciones basicas de C++Instrucciones basicas de C++
Instrucciones basicas de C++
 
Estructura Basica para C++
Estructura Basica para C++Estructura Basica para C++
Estructura Basica para C++
 
Tutorial de visual C++
Tutorial de visual C++Tutorial de visual C++
Tutorial de visual C++
 
Tipos de datos_para_c++
Tipos de datos_para_c++Tipos de datos_para_c++
Tipos de datos_para_c++
 
2015 Upload Campaigns Calendar - SlideShare
2015 Upload Campaigns Calendar - SlideShare2015 Upload Campaigns Calendar - SlideShare
2015 Upload Campaigns Calendar - SlideShare
 
What to Upload to SlideShare
What to Upload to SlideShareWhat to Upload to SlideShare
What to Upload to SlideShare
 
Getting Started With SlideShare
Getting Started With SlideShareGetting Started With SlideShare
Getting Started With SlideShare
 

Similar a Bibliotecas o librerias_para_c_

Presentacion1(3)(2)
Presentacion1(3)(2)Presentacion1(3)(2)
Presentacion1(3)(2)gadiel1515
 
bibliotecas c++
bibliotecas c++bibliotecas c++
bibliotecas c++LaishaXime
 
Practica 1
Practica 1Practica 1
Practica 1Tensor
 
Bibliotecas que existen_para_c++
Bibliotecas que existen_para_c++Bibliotecas que existen_para_c++
Bibliotecas que existen_para_c++andreadelacruz002
 
Bibliotecas de C
Bibliotecas de CBibliotecas de C
Bibliotecas de CLorenaCMtz
 
Bibliotecas virtuales
Bibliotecas virtualesBibliotecas virtuales
Bibliotecas virtualesKareliaRivas
 
Centro de estudios_tecnologicos_industrial_y_de_servicios
Centro de estudios_tecnologicos_industrial_y_de_serviciosCentro de estudios_tecnologicos_industrial_y_de_servicios
Centro de estudios_tecnologicos_industrial_y_de_serviciosMaztherprozh
 
Bibliotecas para c_
Bibliotecas para c_Bibliotecas para c_
Bibliotecas para c_Maztherprozh
 
Desarrollo de aplicaciones , programacion en dev ++
Desarrollo de aplicaciones , programacion  en   dev ++Desarrollo de aplicaciones , programacion  en   dev ++
Desarrollo de aplicaciones , programacion en dev ++ernestre
 
Desarrollo de aplicaciones , programacion en dev ++
Desarrollo de aplicaciones , programacion  en   dev ++Desarrollo de aplicaciones , programacion  en   dev ++
Desarrollo de aplicaciones , programacion en dev ++ernestre
 
3.6 funciones de biblioteca
3.6 funciones de biblioteca3.6 funciones de biblioteca
3.6 funciones de bibliotecaSNPP
 
Estructura basica para_c_++
Estructura basica para_c_++Estructura basica para_c_++
Estructura basica para_c_++heidiromero11
 
Estructura basica para_c_(2)
Estructura basica para_c_(2)Estructura basica para_c_(2)
Estructura basica para_c_(2)LuisCetis109
 
Edna Lenguaje C
Edna Lenguaje CEdna Lenguaje C
Edna Lenguaje CDavitza
 

Similar a Bibliotecas o librerias_para_c_ (20)

librerias.pptx
librerias.pptxlibrerias.pptx
librerias.pptx
 
Bibliotecas de c_
Bibliotecas de c_Bibliotecas de c_
Bibliotecas de c_
 
Bibliotecas de c_
Bibliotecas de c_Bibliotecas de c_
Bibliotecas de c_
 
Presentacion1(3)(2)
Presentacion1(3)(2)Presentacion1(3)(2)
Presentacion1(3)(2)
 
bibliotecas c++
bibliotecas c++bibliotecas c++
bibliotecas c++
 
Practica 1
Practica 1Practica 1
Practica 1
 
Bibliotecas que existen_para_c++
Bibliotecas que existen_para_c++Bibliotecas que existen_para_c++
Bibliotecas que existen_para_c++
 
Bibliotecas de C
Bibliotecas de CBibliotecas de C
Bibliotecas de C
 
Bibliotecas virtuales
Bibliotecas virtualesBibliotecas virtuales
Bibliotecas virtuales
 
Centro de estudios_tecnologicos_industrial_y_de_servicios
Centro de estudios_tecnologicos_industrial_y_de_serviciosCentro de estudios_tecnologicos_industrial_y_de_servicios
Centro de estudios_tecnologicos_industrial_y_de_servicios
 
Bibliotecas para c++
Bibliotecas para c++Bibliotecas para c++
Bibliotecas para c++
 
Bibliotecas para c_
Bibliotecas para c_Bibliotecas para c_
Bibliotecas para c_
 
Librerias en c
Librerias en cLibrerias en c
Librerias en c
 
Estructura basica para c++
Estructura basica para c++Estructura basica para c++
Estructura basica para c++
 
Desarrollo de aplicaciones , programacion en dev ++
Desarrollo de aplicaciones , programacion  en   dev ++Desarrollo de aplicaciones , programacion  en   dev ++
Desarrollo de aplicaciones , programacion en dev ++
 
Desarrollo de aplicaciones , programacion en dev ++
Desarrollo de aplicaciones , programacion  en   dev ++Desarrollo de aplicaciones , programacion  en   dev ++
Desarrollo de aplicaciones , programacion en dev ++
 
3.6 funciones de biblioteca
3.6 funciones de biblioteca3.6 funciones de biblioteca
3.6 funciones de biblioteca
 
Estructura basica para_c_++
Estructura basica para_c_++Estructura basica para_c_++
Estructura basica para_c_++
 
Estructura basica para_c_(2)
Estructura basica para_c_(2)Estructura basica para_c_(2)
Estructura basica para_c_(2)
 
Edna Lenguaje C
Edna Lenguaje CEdna Lenguaje C
Edna Lenguaje C
 

Más de Oziel Solis Juarez

PRESENTACIONES DE LA INSTRUCCIÓN FOR
PRESENTACIONES DE LA INSTRUCCIÓN FORPRESENTACIONES DE LA INSTRUCCIÓN FOR
PRESENTACIONES DE LA INSTRUCCIÓN FOROziel Solis Juarez
 
PRESENTACIONES DE IF THEN O IF THEN ELSE
PRESENTACIONES DE IF THEN O IF THEN ELSEPRESENTACIONES DE IF THEN O IF THEN ELSE
PRESENTACIONES DE IF THEN O IF THEN ELSEOziel Solis Juarez
 
PRESENTACIONES DE LA INSTRUCCIÓN WHILE
PRESENTACIONES DE LA INSTRUCCIÓN WHILEPRESENTACIONES DE LA INSTRUCCIÓN WHILE
PRESENTACIONES DE LA INSTRUCCIÓN WHILEOziel Solis Juarez
 
: PRESENTACIONES DE LA INSTRUCCIÓN IF
: PRESENTACIONES DE LA INSTRUCCIÓN IF: PRESENTACIONES DE LA INSTRUCCIÓN IF
: PRESENTACIONES DE LA INSTRUCCIÓN IFOziel Solis Juarez
 
Primeras 10 problemas de codeblock
Primeras 10 problemas de codeblockPrimeras 10 problemas de codeblock
Primeras 10 problemas de codeblockOziel Solis Juarez
 

Más de Oziel Solis Juarez (6)

Tutorial code block
Tutorial code blockTutorial code block
Tutorial code block
 
PRESENTACIONES DE LA INSTRUCCIÓN FOR
PRESENTACIONES DE LA INSTRUCCIÓN FORPRESENTACIONES DE LA INSTRUCCIÓN FOR
PRESENTACIONES DE LA INSTRUCCIÓN FOR
 
PRESENTACIONES DE IF THEN O IF THEN ELSE
PRESENTACIONES DE IF THEN O IF THEN ELSEPRESENTACIONES DE IF THEN O IF THEN ELSE
PRESENTACIONES DE IF THEN O IF THEN ELSE
 
PRESENTACIONES DE LA INSTRUCCIÓN WHILE
PRESENTACIONES DE LA INSTRUCCIÓN WHILEPRESENTACIONES DE LA INSTRUCCIÓN WHILE
PRESENTACIONES DE LA INSTRUCCIÓN WHILE
 
: PRESENTACIONES DE LA INSTRUCCIÓN IF
: PRESENTACIONES DE LA INSTRUCCIÓN IF: PRESENTACIONES DE LA INSTRUCCIÓN IF
: PRESENTACIONES DE LA INSTRUCCIÓN IF
 
Primeras 10 problemas de codeblock
Primeras 10 problemas de codeblockPrimeras 10 problemas de codeblock
Primeras 10 problemas de codeblock
 

Bibliotecas o librerias_para_c_

  • 1. CENTROS DE ESTUDIOS TECNOLOGICOS INDUSTRIAL Y DE SERVICIO IDALIA GPE TRISTÁN SÁNCHEZ CARLOS OZIEL SOLIS JUAREZ MARGARITA ROMERO ALVARADO DESARROLLO DE SOFTWARE UTILIZANDO PROGRAMACIÓN BÁSICA 2.A PROGRAMACIÓN
  • 2.
  • 3. ¿Qué son exactamente las librerías?  En C++, se conoce como librerías (o bibliotecas) a cierto tipo de archivos que podemos importar o incluir en nuestro programa. Estos archivos contienen las especificaciones de diferentes funcionalidades ya construidas y utilizables que podremos agregar a nuestro programa, como por ejemplo leer del teclado o mostrar algo por pantalla entre muchas otras más.
  • 4. ¿Qué son exactamente las librerías?  Al poder incluir estas librerías con definiciones de diferentes funcionalidades podremos ahorrarnos gran cantidad de cosas, imaginemos por ejemplo que cada vez que necesitemos leer por teclado, debamos entonces crear una función que lo haga (algo realmente complejo), al poder contar con las librerías en C++, podremos hacer uso de una gran variedad de funciones que nos facilitaran la vida y aumentarán la modularidad de nuestros códigos.
  • 5. Biblioteca Matematica.  Los operadores "<<" representarían el agua, y la dirección en que se mueve. Cualquier cosa que soltemos en el agua: "hola", " " o endl, seguirá flotando hasta llegar a la pantalla, y además mantendrán su orden. En esta biblioteca se definen algunas de las funciones aplicables a los "streams", pero aún no estamos en disposición de acceder a ellas.
  • 6. Biblioteca Matematica. Baste decir de momento que existen cuatro "streams" predeterminados: cin, canal de entrada estándar. cout, canal de salida estándar. cerr, canal de salida de errores. clog, canal de salida de diario o anotaciones.
  • 7. BIBLIOTECA DE NUMEROS ALEATORIOS Contiene tipos, macros y funciones para la conversión numérica, generación de números aleatorios, búsquedas y ordenación, gestión de memoria y tareas similares. Los números aleatorios son útiles en programas que necesitan simular eventos aleatorios, tales como juegos, simulaciones y experimentos. En la práctica ninguna función produce datos aleatorios verdaderos
  • 8. BIBLIOTECA GRAFICA El lenguaje C no provee de herramientas para realizar salida gráfica en un programa. Sin embargo existen una infinidad de bibliotecas, realizadas por terceros que proveen de estas facilidades. Dadas las peculiaridades de cada sistema operativo para manipular el entorno gráfico, es muy difícil mantener la portabilidad de un programa cuando se utilizan rutinas de graficación.
  • 9. BIBLIOTECA GRAFICA EJEMPLO #include <stdio.h> /* el header genérico de la biblioteca */ #include <g2.h> /* el header específico para manipular ventanas de X11 */ #include <g2_X11.h> int main() { int d; /* para identificar el dispositivo */ d = g2_open_X11(100,100); /* abre una ventana de 100 x 100, referenciada por d */ g2_line(d, 10, 10, 90, 90); /* dibuja una linea desde (10,10) hasta (90,90) */ getchar(); /* espera antes de cerrar la ventana */ g2_close(d); /* cierra el dispositivo (ventana) */ return 0; }
  • 10. BIBLIOTECA DEFINIDA POR EL PROGRAMADOR Las funciones que se han utilizado hasta ahora son funciones que el lenguaje de programación ha predefinido en sus bibliotecas o librerías. Sin embargo, también es posible que el programador defina y utilice sus propias funciones.
  • 11. BIBLIOTECA DEFINIDA POR EL PROGRAMADOR Las funciones definidas por el programador se escriben “fuera” de la función main. Si se recuerda, uno de los objetivos del uso de las funciones es la descomposición de problemas complejos y el trabajo en grupo. El siguiente es un ejemplo de una definición de una función. Se utiliza antes de presentar la sintaxis formal de modo que nos podamos familiarizar con la terminología.
  • 12. BIBLIOTECA DEFINIDA POR EL PROGRAMADOR Return cuadrado; El valor de dicha variable (o el valor de dicha constante) constituye el valor de regreso de la función. El tipo del valor que regresa la función debe ser consistente con el tipo del valor de regreso especificado en el encabezado de la función. Observe que, en este ejemplo, el valor de regreso de la función (tipo de la variable llamada cuadrado) es doublé, al igual que el tipo de valor de regreso especificado en el encabezado.
  • 13. Uso de Funciones Definidas por el Programador Algo similar es necesario para funciones definidas por el programador. Ese algo es que, después de las directivas include pero antes de la función main, es necesario escribir el prototipo de la función. El prototipo de la función no es más que el encabezado de la función seguido de punto y coma. El siguiente ejemplo muestra como se podría utilizar en un programa una función definida por el programador.
  • 14. Uso de Funciones Definidas por el Programador EJEMPLO #include <iostream.h> #include <stdlib.h> double square(double numero); int main() /* Prototipo de la funcion*/ { } /* Este programa es solo un ejemplo de la definicion y uso de una funcion definida por el programador*/ double x,y,z; cin>>x>>y; z = square(x);/* Llamado a la funcion*/ z = z * y; cout<<"n"; cout<<z; cout<<"n"; system("PAUSE"); return 0; /* Esta funcion calcula el cuadrado de un numero*/ double square(double numero) { double cuadrado; cuadrado = numero * numero; return cuadrado; {
  • 15. Bibliotecas o librerías en C++  Junto con los compiladores de C y C++, se incluyen ciertos archivos llamados bibliotecas mas comúnmente librerías. Las bibliotecas contienen el código objeto de muchos programas que permiten hacer cosas comunes, como leer el teclado, escribir en la pantalla, manejar números, realizar funciones matemáticas, etc.
  • 16. Bibliotecas o librerías en C++ • Las bibliotecas están clasificadas por el tipo de trabajos que hacen, hay bibliotecas de entrada y salida, matemáticas, de manejo de memoria, de manejo de textos y como imaginarás existen muchísimas librerías disponibles y todas con una función especifica.
  • 17. Sintaxis para declarar Librerías en C++ • La sintaxis es la siguiente: #include <nombre de la librería> o alternativamente #include "nombre de la librería". Cualquiera de las 2 formas es válida en C++ (no estoy seguro si en C sea válido), ten en cuenta que siempre el nombre de la librería debe ir entre " y " o entre < y >. En tu código puedes declarar todas las librerías que quieras aunque en realidad no tienen sentido declarar una librería que no vas a usar en tu programa, sin embargo no existe límite para esto.
  • 18. Librerías Estándar de C++ (Standar Template Library o STL A continuación pondré algunas de las librerías de uso más común de C++ y que forman parte de las librerías estándar de este lenguaje.  fstream:Flujos hacia/desde ficheros. Permite la manipulación de archivos desde el programar, tanto leer como escribir en ellos.  iosfwd:Contiene declaraciones adelantadas de todas las plantillas de flujos y sus typedefs estándar. Por ejemplo ostream.
  • 19. Librerías Estándar de C++ (Standar Template Library o STL  math:Contiene los prototipos de las funciones y otras definiciones para el uso y manipulación de funciones matemáticas.  memory:Utilidades relativas a la gestión de memoria, incluyendo asignadores y punteros inteligentes (auto_ptr).  "auto_ptr" es una clase que conforma la librería memory y permite un fácil manejo de punteros y su destrucción automáticamente.
  • 20. Librerías Estándar de C++ (Standar Template Library o STL  Biblioteca new:Manejo de memoria dinámica  numeric:Parte de la librería numérica de la STL relativa a operaciones numéricas.  ostream:Algoritmos estándar para los flujos de salida.
  • 21. Librerías Estándar de C++ (Standar Template Library o STL  iostream:Parte del a STL que contiene los algoritmos estándar, es quizá la más usada e importante (aunque no indispensable).  La biblioteca list:Parte de la STL relativa a contenedores tipo list; listas doblemente enlazadas  queue:Parte de la STL relativa a contenedores tipo queue (colas de objetos).
  • 22. Librerías Estándar de C++ (Standar Template Library o STL  Librería stdio:Contiene los prototipos de las funciones, macros, y tipos para manipular datos de entrada y salida.  Librería stdlib:Contiene los prototipos de las funciones, macros, y tipos para utilidades de uso general.  string:Parte de la STL relativa a contenedores tipo string; una generalización de las cadenas alfanuméricas para albergar cadenas de objetos. Muy útil para el fácil uso de las cadenas de caracteres, pues elimina muchas d elas dificultades que generan los char
  • 23. Librerías Estándar de C++ (Standar Template Library o STL  vector:Parte de la STL relativa a los contenedores tipo vector; una generalización de las matrices unidimensionales C/C++  forward_listEsta librería es útil para implementar con gran facilidad listas enlazadas simples.  listPermite implementar listas doblemente enlzadas (listas enlazadas dobles) facilmente.
  • 24. Librerías Estándar de C++ (Standar Template Library o STL  iteratorProporciona un conjunto de clases para iterar elementos.  regexProporciona fácil acceso al uso de expresiones regulares para la comparación de patrones.  threadÚtil para trabajar programación multihilos y crear múltiples hilos en nuestra aplicación
  • 25. Acerca del namespace std  El espacio de nombre std como tal no es una librería sino simplemente un namespace, por esta razón no reemplaza la declaración de las librerías del código, simplemente facilita la escritura de éste al momento de usar las entidades de las librerías estándar.
  • 26. Acerca del namespace std • Sin embargo si vamos a hacer uso de una o varias librerías estándar de C++ es recomendable que declaremos el namespace std, para no tener que estar constantemente escribiendo cosas similares a las que puse hace unas líneas como std::cin o similares, dado que únicamente se puede acceder a la entidades de las librerías estándar por medio del espacio nombre std.
  • 28. Conclusión  Las librearías son archivos (no siempre externos) que nos permiten llevar a cabo diferentes tareas sin necesidad de preocuparnos por cómo se hacen sino simplemente entender cómo usarlas. Las librearías en C++ permiten hacer nuestros programas más modulares y reutilizables, facilitando además crear programas con funcionalidades bastante complejas en unas pocas líneas de código.
  • 29. Opinión  En C++, la biblioteca estándar es una colección de Clases y funciones, escritas en el núcleo del lenguaje. La biblioteca estándar proporciona varios contenedores genéricos, funciones para utilizar y manipular esos contenedores, funciones objeto, cadenas y flujos genéricos (incluyendo E/S interactiva y de archivos) y soporte para la mayoría de las características del lenguaje.