Dominio de la Sentencia Return en Funciones de C
Enviado por Chuletator online y clasificado en Informática y Telecomunicaciones
Escrito el en
español con un tamaño de 2,78 KB
Uso y Funcionamiento de la Sentencia Return en C
Si la función es de un tipo de dato distinto de void, entonces en el bloque de la función debe escribirse, al menos, una sentencia return. En ese caso, además, en esa sentencia y a continuación de la palabra return, deberá ir el valor que devuelve la función: o el identificador de una variable o un literal, siempre del mismo tipo que la función o de otro tipo compatible.
Funciones de tipo void
Una función tipo void no necesariamente tendrá la sentencia return. En ese caso, la ejecución de la función terminará con la última sentencia del bloque. Si una función de tipo void hace uso de sentencias return, entonces en ningún caso debe seguir a esa palabra valor alguno: si así fuera, el compilador detectará un error y no compilará el programa.
Comportamiento de la sentencia return
La sentencia return puede encontrarse en cualquier momento del código de una función. De todas formas, no tendría sentido incluir ninguna sentencia más allá de un return que no estuviera condicionado, pues esa sentencia jamás llegaría a ejecutarse.
En resumen, la sentencia return realiza básicamente dos operaciones:
- Fuerza la salida inmediata del cuerpo de la función y se vuelve a la siguiente sentencia después de la llamada.
- Si la función no es tipo void, además de terminar la ejecución, devuelve un valor a la función que la llamó. Si esa función llamante no recoge ese valor en una variable, el valor se pierde, junto con todas las variables locales de la función abandonada.
Sintaxis y Conversión de Tipos
La forma general de la sentencia return es:
return [expresión];
Si el tipo de dato de la expresión del return no coincide con el tipo de la función, de forma automática, el tipo de dato de la expresión se convierte al tipo de dato de la función.
Ejemplos Prácticos
Ha llegado el momento de ver algunos ejemplos.
Ejemplo 1: Función de tipo void (Procedimiento)
Veamos primero una función que muestra un mensaje por pantalla.
- Declaración:
void mostrar(short); - Definición:
void mostrar(short x) { printf(“El valor recibido es %hd.”, x); } - Llamada:
mostrar(10);
Esto ofrece la siguiente salida por pantalla: El valor recibido es 10.
Ejemplo 2: Función con retorno de valor
Una función que reciba un entero y devuelva el valor de su cuadrado.