Entrada y salida de datos en C++ ejemplos

Salida de datos por consola

Se le llama entrada a la capacidad que tiene una aplicación para recibir datos en este caso texto que le suministraremos a la aplicación, y salida a todo tipo de datos que devuelve la aplicación como texto, imágenes, sonido, resumiéndose ambas cosas en entrada y salida usualmente se abrevia como I/O del inglés input(entrada) output(salida).

Importancia de manejar la entrada y salida en c++


Este es uno de los temas básicos si no se conoce simplemente no se puede programar porque al final se puede prescindir de algunos temas al crear una aplicación como las librerías para crear gráficos o librerías de audio pero no se puede prescindir de la entrada y salida de datos como el texto que es tan esencial en toda aplicación.

Salida de datos en C++


La librería que se encarga de I/O en C++ se llama iostream esta librería contiene todas las funciones necesarias para el manejo esencial de este tema se declara de la siguiente forma.

#include <iostream>


Posterior a esto recordemos que es recomendable indicarle al programa que se usaran espacios de nombre Std quedando de la siguiente forma:

#include <iostream>
using namespace std;


Agregamos ahora la función int main() que todo programa en C++ tiene que tener, dentro de la cual irá todo el código y se ve asi.

#include <iostream>
using namespace std;
int main()
{
// aquí irá el código (este es un comentario)
}


Para visualizar texto en pantalla se utiliza la sentencia cout seguida de dos signos menor que "<<" y luego el texto a visualizar entre comillas, números sin comillas o el contenido de una variable también sin comillas, como en el siguiente ejemplo.

cout << "Texto de salida ";
// Con números se ve así
cout << 100;
// Y con una variable se ve asi
string variable1 = "Un texto que se mostrara ";
cout << variable1;
// En el siguiente capítulo el de variables se mostrara
// como usar distintos tipos de variables


Advertencia: Si todavía no lo sabe e intenta compilar el código anterior, al ejecutarlo una ventana de línea de comandos se abrirá y cerrara rápidamente, esto se debe a que no le estamos indicando al programa que se detenga, la forma más sencilla y clásica de hacerlo es añadiendo arriba la librería #include <cstdlib> para usar la función system("pause"); antes de cerrar la función main o donde queramos que se produzca una pausa.

Se puede utilizar o concatenar más de 1 variable o texto, añadiendo varias veces << antes de cada texto se ve así.

cout << "El resultado es:" << var1 << ".";


Para producir un salto de línea se utiliza "\n", obsérvese que se hace uso del back slash(\) antes de la n y no del slash común (/).

Entrada en C++ con ejemplos


Es casi lo mismo que la función para salida pero por fuerza tiene que llevar siempre una variable donde almacenaremos el texto que el usuario ingresara, obviamente la palabra u objeto a utilizar no puede ser cout esta vez será cin y en lugar de apuntar las flechas a la izquierda "<<" esta vez apuntaran a la derecha ">>"(dos signos de mayor qué), veamos este ejemplo con más atención que los anteriores.

string mitexto;
cout << "Escribe tu nombre ";
cin >> mitexto ;
cout << "Tu nombre es " << mitexto;


Si compila el programa anterior se dará cuenta que el programa le pedirá escribir su nombre y tras escribirlo le devolverá su nombre, pero
si este código no le está funcionando puede deberse a que se quedó perdido en alguna parte de la explicación, añado el código entero a continuación el cual podrá copiar y pegar para ser compilado y así comprobar que el código si está funcionando, luego verificar junto al código que ha escrito y descubrir en que parte se equivocó.

#include <iostream>
#include <cstdlib>
using namespace std;
int main()
{
string mitexto;
cout << "Escribe tu nombre ";
cin >> mitexto ;
cout << "Tu nombre es " << mitexto;
system("pause");
return 0;
}


Se recomienda utilizar << endl al final de cada cout cuya función es insertar una nueva línea como hacíamos con "\n" por tanto ya no será necesario usarlo y además termina vaciando el espacio de memoria utilizado, esta es una práctica muy habitual, se usa de esta forma.

cout << "Tu nombre es " <<  endl;


Nota: cout viene de c out(c output) y significa salida en C, cin viene de c in(c input) y significa salida en C.

Diferencia entre printf y cout en C++



En ocasiones puede ver algunos ejemplos que utilizan printf() para salida de texto por pantalla, esto puede ser un poco confuso, rápidamente le comparto que la diferencia es que Cout pertenece al lenguaje C++ mientras que Printf pertenece al lenguaje C, el motivo por el que se puede utilizar printf si está creando un programa en C++ es porque este lenguaje ha heredado la mayoría de las funciones del lenguaje C, pero si está programando un código en C tendrá que utilizar por fuerza printf().

Que es mejor printf o cout



No es una cosa de cuál sea mejor porque en verdad ambos hacen la misma funcionalidad, el asunto es que si está programando en C++ puede elegir entre printf y cout, pero la recomendación es que utilice cout por ser el estándar, si está programando en C entonces estará obligado a utilizar printf pues no hay otra opción.
Comentarios y preguntas