Void
es una palabra reservada o un tipo de dato que se traduce literalmente
como “vacío” o “nulo”.
Este tipo de dato se usa solamente en una función cuando no queremos que
devuelva ningún valor a la función principal.
Decidimos hacer una sección aparte de los artículos de funciones ya que
la función void en especial tiene mucho de qué hablar.
__________________________________________________________
ÍNDICE
__________________________________________________________
¿Cómo hacer una operación sin retornar valores?
Pongamos un ejemplo:
Hacer un programa que llame a una función llamada suma, la cual tome
como parámetros dos números, los sume y después muestre el
resultado.
#include <iostream> using namespace std; void suma(int, int); int main(){ int num1, num2; cout<<"Inserte primer numero: "; cin>>num1; cout<<"Inserte numero dos: "; cin>>num2; suma(num1, num2); return 0; } void suma(int primero, int segundo){ int resultado = 0; resultado = primero + segundo; cout<<"\nEl resultado es: "<<resultado<<endl;
}
Como podemos ver al mandar los dos parámetros a la función suma y realizar
la operación correspondiente, dentro de la misma función se mostró el
resultado de la suma,
sin necesidad de retornar algún valor.
Esto no solo se limita a operaciones matemáticas, sino que este método se
puede implementar a
Cadenas,
Arreglos, etc.
¿Cómo pedir y mostrar valores en funciones distintas?
Hay ocasiones donde se necesitan hacer las mismas preguntas en un programa,
para eso se crean funciones que pidan los datos y otras para mostrarlos.
Tomaremos el ejemplo anterior pero agregándole más funciones:
#include <iostream>
using namespace std;
void pedir();
int suma(int, int);
void mostrar(int);
int num1, num2, resultado = 0;
int main(){
pedir();
suma(num1, num2);
mostrar(resultado);
return 0;
}
void pedir(){
cout<<"Ingrese primer numero: ";
cin>>num1;
cout<<"Ingrese segundo numero: ";
cin>>num2;
}
int suma(int primero, int segundo){
resultado = primero + segundo;
return resultado;
}
void mostrar(int lasuma){
cout<<"\nEl resultado es: "<<lasuma<<endl;
}
Como puedes apreciar, primero creamos los prototipos de función, debajo
colocamos los datos globales (los colocamos ya que vamos a usar estos
datos en todas las funciones), seguida por la función principal y finalmente
las funciones.
pedir() es la función que
pide al usuario que rellene la información para hacer la operación.
Esta función no necesita parámetros ya que lo que estamos haciendo es
pedirle datos al usuario, no realizar una operación ni nada por el
estilo.
suma() es la función de tipo entero que
realizará la operación y devolverá el resultado de la suma.
mostrar() es la función que mostrará el resultado de la suma.
Esta función si necesita un parámetro ya que este lo que va a hacer es
mostrar el resultado de la operación, por lo que no podemos mostrar el
resultado sin decirle a la función cual es.