www.cybersitio.n2v.net
www.cybersitio.cjb.net
Buscar en Internet:
   Página Principal :: Lenguaje C++ :: Entrada y salida estandar en C++
          

Ahora pasaré a describir uno de los aspectos más importantes de los lenguajes de Programación; la entrada y salida, la cual permite al usuario de un programa interactuar con este. Muchos lenguajes de alto nivel suministran inadecuadas facilidades de entrada y salida; este no es el caso de C++.
C++ tiene sus propios archivos de cabecera por ejemplo iostream.h, fstream.h las cuales conforman su colección de funciones de E/S. El flujo de entrada y salida se define como un conjunto de clases, las cuales están contenidas en el archivo de cabecera iostream.h y se sobrecargan con los operadores << y >>.

El fichero iostream.h posee variedad de facilidades, definidas en cada una de las clases que posee, las cuales intervienen en los procesos de conversión de objetos en secuencia de caracteres y viceversa; a estas facilidades se las denomina streams.

 

SALIDA.
Este flujo se abre automáticamente cuando comienza la ejecución del programa. Este método de salida (inserción) consiste en aplicar el operador de inserción "<<" a cout. ejemplo:
#include<iostream.h>
void main()
{
cout<<"hola mundo!";
}

Además el objeto cout (objeto desde el punto de vista de la POO), se puede sobrecargar, por ejemplo:

                    porcentaje_pureza = 5.4;             

                    cout<<"El porcentaje de pureza es:"<<porcentaje_pureza<<endl;

son líneas de código que nos produciría la siguiente salida:

                                       El porcentaje de pureza es : 5.4  el stream endl es un salto de línea.

SALIDA DE ERROR.

Al igual que existe un dispositivo estándar de salida, existe uno de error al cual se envían los mensajes mediante el uso del objeto cerr en lugar de cout:

cerr<<"El dato es incorrecto, se ha producido un error!";                               

SALIDA  CON FORMATO.

La entrada y salida se puede realizar aplicándole un formato el cual se asocia con el stream de salida, un conjunto de manipuladores, estos permiten manipular la forma como son visualizados los resultados al usuario, dichos manipuladores son funciones que son llamadas en determinada parte del código fuente, estos son algunos de los manipuladores los cuales se encuentran en el archivo de cabecera iomanip.h:

endl

inserta el caracter de fin de línea '\n' 

ends

inserta el caracter de fin de cadena '\0'

dec

conversión a decimal

hex

conversión a hexadecimal

oct

conversión a octal

ws

Extrae un espacio en blanco del inicio de un stream

flush

vacía el buffer respecto de un stream de salida

setprecision ( int n)

precisión de un dato coma flotante (cifras significativas)

setfill (int car)

determina el caracter de relleno para las cadenas de caracteres

setw (int n)

establece anchura de campo

setiosflags (long fs)

establece una lista de indicadores de formato, fija bites de formato

resetiosflags (long fs)

suprime una lista de indicadores de formato e inicializa formato de bits 

  


ENTRADA.
Cuando existe un dispositivo preestablecido de entrada; cin se asocia con este mediante el operador de extracción ">>", ejemplo:
                 
#include<iostream.h> 

                void main()

                {
                 int x;
                 cout<<"digite un entero";
                 cin>>x;
                }

Con el objeto cin podemos leer diferentes tipos de datos, por ejemplo:

                char mi_nombre[ 60 ];

                cout<<"Cual es su nombre ?: ";

                cin>>mi_nombre;

Supongamos que se digita Jairo Alexander  en el array de caracteres únicamente se almacenará Jairo, para solucionar este inconveniente tenemos la función miembro getline. En el ejemplo anterior reemplazaríamos la tercera línea de código por:

                                cin.getline(mi_nombre,60,'\n');  

©CopyRight 1999-2001 CyberSitio. Todos los derechos Reservados. Webmaster: Jairo Ceballos