manpagez: man pages & more
info autoconf
Home | html | info | man

File: autoconf.info,  Node: Exiting Portably,  Prev: Floating Point Portability,  Up: Portable C and C++++

13.8 Exiting Portably
=====================

A C or C++ program can exit with status N by returning N from the ‘main’
function.  Portable programs are supposed to exit either with status 0
or ‘EXIT_SUCCESS’ to succeed, or with status ‘EXIT_FAILURE’ to fail, but
in practice it is portable to fail by exiting with status 1, and test
programs that assume Posix can fail by exiting with status values from 1
through 255.

   A program can also exit with status N by passing N to the ‘exit’
function, and a program can fail by calling the ‘abort’ function.  If a
program is specialized to just some platforms, it can fail by calling
functions specific to those platforms, e.g., ‘_exit’ (Posix).  However,
like other functions, an exit function should be declared, typically by
including a header.  For example, if a C program calls ‘exit’, it should
include ‘stdlib.h’ either directly or via the default includes (*note
Default Includes::).

   A program can fail due to undefined behavior such as dereferencing a
null pointer, but this is not recommended as undefined behavior allows
an implementation to do whatever it pleases and this includes exiting
successfully.

© manpagez.com 2000-2025
Individual documents may contain additional copyright information.