quick_exit - cppreference.com

##### cppreference.com

##### Search

Create account

##### Namespaces

- Page
- Discussion

##### Variants

##### Views

- View
- Edit
- History

##### Actions

# quick_exit

From cppreference.com
< c‎ | program

Defined in header `<stdlib.h>` |  |
_Noreturn void quick_exit( int exit_code ); |  | (since C11)

Causes normal program termination to occur without completely cleaning the resources.

Functions passed to at_quick_exit are called in reverse order of their registration. After calling the registered functions, calls _Exit(exit_code)

### [edit] Parameters

exit_code | - | exit status of the program

### [edit] Return value

(none)

### [edit] Example

Run this code

    #include <stdlib.h>
    #include <stdio.h>

    void f1(void)
    {
        puts("pushed first");
        fflush(stdout);
    }

    void f2(void)
    {
        puts("pushed second");
    }

    int main(void)
    {
        at_quick_exit(f1);
        at_quick_exit(f2);
        quick_exit(0);
    }

Output:

    pushed second
    pushed first

### [edit] References

- C11 standard (ISO/IEC 9899:2011):

  - 7.22.4.7 The quick_exit function (p: 353)

### [edit] See also

abort | causes abnormal program termination (without cleaning up) (function) [edit]
atexit | registers a function to be called on exit() invocation (function) [edit]
at_quick_exit (C11) | registers a function to be called on `quick_exit` invocation (function) [edit]
C++ documentation for quick_exit

Retrieved from "http://en.cppreference.com/mwiki/index.php?title=c/program/quick_exit&oldid=87831"