que puedes usar EXIT_SUCCESS cuando el programa terminó correctamente y EXIT_FAILURE cuando no lo hizo. EXIT_SUCCESS es cero, y cero es portátil para cualquier sistema operativo, mientras que EXIT_FAILURE cambia de UNIX a Windows, por ejemplo. Estas constantes se definen en el encabezado stdlib.h
.
#include <stdlib.h>
int main()
{
int toret = EXIT_SUCCESS;
if (!(/* do something useful here */)) {
toret = EXIT_FAILURE;
}
return toret;
}
El código de retorno del programa era más útil cuando los programas se escribían para la consola. Hoy en día, es bastante raro, a menos que trabaje en un entorno muy profesional (e incluso esto ahora está cambiando, con las herramientas de flujo de trabajo disponibles).
Como @Benoit Dicho esto, el código de salida indica al sistema operativo cuando la operación se ha realizado correctamente o no. Si el código de salida significa falla, entonces puede interrumpir el flujo del programa por lotes, ya que no es probable que funcione.
Por ejemplo, un compilador puede tener un código de salida de cero si la compilación se ha realizado correctamente, y cualquier otro valor si la compilación no tuvo éxito. En Windows, esto se puede acceder a través de la variable de sistema operativo "nivel de error":
gcc helloworld.cpp -ohelloworld.exe
goto answer%errorlevel%
:answer0
copy helloworld.exe c:\users\username\Desktop
echo Program installed
goto end
:answer1
echo There were errors. Check your source code.
:end
echo Now exiting...
Este archivo por lotes ventanas "instala" HelloWorld.exe en el escritorio cuando la compilación se ha realizado correctamente. Dado que puede activar la ejecución de archivos por lotes con doble clic, esto puede permitirle evitar tocar la línea de comando para la compilación.
Por supuesto, tener en cuenta que es mejor manejado por ambientes integrados (si no existiera el código de salida, que no sería capaz de funcionar correctamente). También tenga en cuenta que hacen es el mejor en este campo:
https://en.wikipedia.org/wiki/Make_(software)
Hacer necesita también de códigos de salida para funcionar correctamente.
http://stackoverflow.com/questions/204476/what-should-main-return-in -c-and-c –