Difference between exit() and _Exit()
Let’s understand the difference through an example.
Here, in the following program, we have used exit(),
C++
Exiting
The code is immediately terminated after exit() is encountered. Now, if we replace exit with _Exit(),
C++
// A C++ program to demonstrate the difference between // exit() and _Exit() #include <bits/stdc++.h> using namespace std; // Function registered with atexit() void fun( void ) { cout << "Exiting" ; } int main() { // Register fun() to be called at program termination atexit (fun); // Terminate the program immediately using _Exit() // function with exit code 10 _Exit(10); // The code after _Exit() will not be executed return 0; } |
No output
exit() vs _Exit() in C/C++
exit() and _Exit() in C/C++ are very similar in functionality. However, there is one difference between exit() and _Exit() and it is that exit() function performs some cleaning before the termination of the program like connection termination, buffer flushes, etc.