Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: Zodiak98 en 25 Julio 2013, 05:42 am



Título: [Pregunta] ¿Porqué el main tiene que ser int?
Publicado por: Zodiak98 en 25 Julio 2013, 05:42 am
O sea yo siempre he programado colocando siempre el main de tipo 'int' y obviamente retornando, pero o sea yo tengo claro (hasta los momentos) que el main siempre sera 'int' (al menos todos lo ejemplos que he visto y los programas que he creado ha sido de esa manera): Pero ahora si mi pregunta, ¿Qué hace el sistema operativo con el valor que retorna el main? ¿Nada? ¿Nada de nada? >_< xDD Ya se que los programadores utilizan diferentes valores para identificar errores e utilizan el '0' para indicar que el programa finalizo completo como se debía y sin ningún error.

Espero haberme aclarado.

Otra cosa perdonen por ser tan preguntón, pero como dicen, las dudas llevan al conocimiento profundo y preciso. (y) xDDD


Título: Re: Re: [Pregunta] ¿Porqué el main tiene que ser int?
Publicado por: raul338 en 25 Julio 2013, 06:38 am
Es precisamente eso, para devolver si tu programa se ejecuto con exito o no. Asi otra aplicacion puede llamar al programa que compiles y saber como termino.

Que vos no lo uses es otra cosa xD

Enviado desde mi LG-E612g usando Tapatalk 2


Título: Re: [Pregunta] ¿Porqué el main tiene que ser int?
Publicado por: Eternal Idol en 25 Julio 2013, 09:05 am
El S.O. no suele hacer nada pero el que ejecute tu programa puede intentar comprobar el resultado.


Título: Re: [Pregunta] ¿Porqué el main tiene que ser int?
Publicado por: amchacon en 25 Julio 2013, 10:03 am
La mayor utilidad suele ser a la hora de depurar (puedes asignarte distintos valores para distintos errores).


Título: Re: [Pregunta] ¿Porqué el main tiene que ser int?
Publicado por: Caster en 25 Julio 2013, 15:16 pm
Además de todo lo que te han dicho más arriba, creo que son cuestiones del estándar.

http://foro.elhacker.net/programacion_cc/lo_que_no_hay_que_hacer_en_cc_nivel_basico-t277729.0.html

Dentro de este posts vienen algunos links hablando del tema.

Saludos.


Título: Re: Re: [Pregunta] ¿Porqué el main tiene que ser int?
Publicado por: Zodiak98 en 25 Julio 2013, 19:32 pm
Es precisamente eso, para devolver si tu programa se ejecuto con exito o no. Asi otra aplicacion puede llamar al programa que compiles y saber como termino.

Que vos no lo uses es otra cosa xD

Enviado desde mi LG-E612g usando Tapatalk 2

El S.O. no suele hacer nada pero el que ejecute tu programa puede intentar comprobar el resultado.

No manchen la verdad nunca se me habría ocurrido eso Jaja. >_< Gracias! Ahora se que, por ejemplo otra aplicación ejecuta mi programa, si mi programa retorna '0' que la otra aplicación tome una acción y si retorna con un valor por ejemplo -1 que se cierren ambas aplicaciones.



Título: Re: [Pregunta] ¿Porqué el main tiene que ser int?
Publicado por: x64core en 28 Julio 2013, 06:33 am
Ademas de no solo quien fue el proceso padre de tu aplicacion sino tambien puede comprobar el codigo cualquier proceso que
tengo un handle al proceso con los permisos necesarios y usar GetExitCodeProcess
http://msdn.microsoft.com/en-us/library/windows/desktop/ms683189(v=vs.85).aspx