elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Es necesario escribir return; al final de una funcion, y void?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Es necesario escribir return; al final de una funcion, y void?  (Leído 2,043 veces)
RGT

Desconectado Desconectado

Mensajes: 33



Ver Perfil
Es necesario escribir return; al final de una funcion, y void?
« en: 29 Marzo 2015, 07:47 am »

Ejemplo:
Código:
void Funcion(int Numero)
{
   procesamiento......

   [B]return;[/B]
}

Pregunta:
Es necesario el "return:" al final de cada función o no?, qué es lo correcto?.

Ejemplo:
Código:
void Funcion([B]void[/B])
{
   procesamiento......
}

Pregunta:
Es necesario el "void" sino necesito recibir ningún valor?, qué es lo correcto?.

-
Algunos dice que nó y otros dicen que sí.
Qué es lo correcto para una perfecta comprensión para el compilador y la mejor prática en C?.


En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: Es necesario escribir return; al final de una funcion, y void?
« Respuesta #1 en: 29 Marzo 2015, 12:04 pm »

lo ideal es escribir el void para que el compilador vaya con preaviso que eso no retornará nada...

void no requiere return, ya que no retorna nada, sin embargo puede ser usado para salir de la función prematuramente ej

Código
  1. void print_3(int num){
  2.  if(num==3){
  3.    printf("es tres");
  4.    return;
  5.  }
  6.  printf("no es tres");
  7. }


En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
rir3760


Desconectado Desconectado

Mensajes: 1.639


Ver Perfil
Re: Es necesario escribir return; al final de una funcion, y void?
« Respuesta #2 en: 29 Marzo 2015, 17:53 pm »

Código
  1. void Funcion(void)
  2. {
  3.   procesamiento......
  4. }

Es necesario el "void" sino necesito recibir ningún valor?, qué es lo correcto?.
Depende.

En una declaración los paréntesis vacíos indican que la función recibe un numero no determinado de argumentos, si la intención es indicar que no recibe argumentos se debe utilizar la palabra reservada "void". Un ejemplo:
Código
  1. void f();      /* El numero de argumentos es indeterminado */
  2. void g(void);  /* El numero de argumentos es cero */

En una definición los paréntesis vacíos indican que la función no recibe argumentos, no es necesario utilizar void para indicarlo. Sin embargo se recomienda utilizar void en las definiciones por simetría (estilo). Un ejemplo:
Código
  1. void f()      /* El numero de argumentos es cero */
  2. {
  3.   /* ... */
  4. }
  5.  
  6. void g(void)  /* El numero de argumentos es cero */
  7. {
  8.   /* ... */
  9. }

Un saludo
En línea

C retains the basic philosophy that programmers know what they are doing; it only requires that they state their intentions explicitly.
--
Kernighan & Ritchie, The C programming language
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
_warn_unused_return_ pide retorno de valor en funcion void
Programación C/C++
Thelord 7 4,960 Último mensaje 9 Octubre 2010, 04:21 am
por Foxy Rider
[c]Duda con return en funcion
Programación C/C++
dmacias 5 2,694 Último mensaje 8 Abril 2014, 18:51 pm
por dmacias
Inyección de código de función void.
Análisis y Diseño de Malware
Kaxperday 1 2,916 Último mensaje 13 Abril 2016, 22:50 pm
por fary
Función con return de varias variables
Programación C/C++
Palante 1 1,861 Último mensaje 11 Febrero 2017, 02:29 am
por engel lex
Que diferencia hay entre una funcion void e int??
Programación C/C++
Grado 33 2 5,336 Último mensaje 21 Mayo 2017, 18:30 pm
por ivancea96
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines