Uso de funciones en C++

Archivada en Desarrollo

Uso de funciones en C++

Las funciones regresan un valor o un tipo void (o sea, ningún valor). Por ejemplo, una función que realiza la suma de dos números enteros regresa el resultado de la suma, que a su vez, es un número entero. Una función que solo imprime un mensaje no regresa nada, por lo que su tipo es void.

Las funciones en C++ tienen un encabezado y un cuerpo. En el encabezado podemos encontrar el tipo del valor de retorno, el nombre de la función y la declaración de parámetros. En el caso de la función suma, el encabezado es el siguiente:

int Suma(int a, int b)

Un parámetro es una declaración del tipo de valor que va a recibir la función. Un sinónimo de parámetro es argumento.

El cuerpo de la función consta de la llave de apertura {, las instrucciones que realiza la función. También se incluye la instrucción return con el valor que devuelve la función. Si no se incluye un return, la función regresa un valor void. Por último, el cuerpo de la función se finaliza con la llave de cierre }.

Veamos el código de la función suma().

#include <iostream>
using namespace std;

int suma(int a, int b);
int main();

int suma(int a, int b) {
    cout << "En suma() se recibieron " << a << " y " << b << endl;
    return a + b;
}

int main() {
    cout << "Estoy en main()";
    int c, x, y;
    cout << "Ingrese dos numeros: ";
    cin >> x >> y;
    cout << "Llamando a suma()" << endl;
    c = suma(x, y);
    cout << "Regresamos a main()" << endl;
    cout << "La suma de " << x << " y " << y << " es " << c << endl;
    cout << "Saliendo..." << endl;
    return 0;
}

La salida de este programa se ve así:

Ingrese dos numeros: 3 5
Llamando a suma()
En suma() se recibieron 3 y 5
Regresamos a main()
La suma de 3 y 5 es 8
Saliendo...

La definición de la función indica que recibe dos parámetros, que son números enteros llamados a y b. Dentro del cuerpo de la función, se muestran estos números en la pantalla y para finalizar se regresa la suma de esos números.

El programa inicia en la función main(), la primera línea es solo un aviso de inicio del programa. La segunda línea declara las variables dentro de main() que usaremos para la ejecución.

A continuación, pedimos dos números y los guardamos en las variables x y y declaradas previamente. Luego aparece un aviso de la llamada que hacemos a suma(). Cuando llamamos a esta función, colocamos el valor de retorno en la variable c que ya habíamos declarado.

Ahora se ejecuta suma(), se muestra el mensaje y se regresa el resultado de la suma de los argumentos enviados a la función. Se muestran mensajes de información y termina el programa regresando un 0 al sistema.

El compilador GCC

El compilador gcc en realidad es una familia de compiladores, en el caso de C++, el compilador g++ es una especie de alias para gcc.

Este comando acepta muchas opciones para compilar pero a continuación veremos las más comunes.

Opción Significado
ninguna Compilar y enlazar el programa indicado. De este modo se produce un programa con el nombre a.out.
-c Compila pero no enlaza; se crea un archivo objeto con la extensión .o.
-D macro=valor Define un macro dentro del programa como valor.
-E Preprocesar, pero no compila ni enlaza; la salida se muestra en pantalla.
-g Incluir información de depuración en el archivo ejecutable.
-Idir Incluir dir como directorio para buscar los archivos de encabezados, que son los que se incluyen en el preámbulo del programa entre < y >.
-Ldir Se incluye el directorio dir en la ruta de búsqueda de archivos de biblioteca, utilizados por el enlazador para resolver referencias externas. Se pueden incluir varios directorios separados por punto y coma (;).
-l biblioteca Incluir biblioteca al enlazar.
-O Optimiza el código ejecutable.
-o archivo Guarda el ejecutable en la ruta indicada por archivo.
-W all Habilita todas las advertencias para todo el código que se deba evitar.
-w Deshabilita todos los mensajes de advertencia.
Tabla 1: Opciones del compilador

Javier Sanchez Toledano

Soy programador en Django+Python y WordPress. Auditor líder certificado en la norma ISO 9001:2008. Fotógrafo aficionado.
Redes Sociales:

Tlaxcala, México

Comentarios