Open In App

exit(0) vs exit(1) in C/C++ with Examples

Improve
Improve
Like Article
Like
Save
Share
Report

exit is a jump statement in C/C++ language which takes an integer (zero or non zero) to represent different exit status.

There are two types of exit status in C/C++:

  1. Exit Success: Exit Success is indicated by exit(0) statement which means successful termination of the program, i.e. program has been executed without any error or interrupt.




    #include <file.h>
    #include <stdio.h>
      
    int main()
    {
        FILE* file;
      
        // opening the file in read-only mode
        file = fopen("myFile.txt", "r");
      
        printf("File opening successful!");
      
        // EXIT_SUCCESS
        exit(0);
    }

    
    

    Note: Create a file called ‘myFile.txt’ and run the code in your local device to see the output.

  2. Exit Failure: Exit Failure is indicated by exit(1) which means the abnormal termination of the program, i.e. some error or interrupt has occurred. We can use different integer other than 1 to indicate different types of errors.




    #include <file.h>
    #include <stdio.h>
      
    int main()
    {
        FILE* file;
      
        // open the file in read-only mode
        file = fopen("myFile.txt", "r");
      
        if (file == NULL) {
            printf("Error in opening file");
      
            // EXIT_FAILURE
            exit(1);
        }
      
        // EXIT_SUCCESS
        exit(0);
    }

    
    

Let’s see the differences between these two statements-

exit(0) exit(1)
Reports the successful termination/completion of the program. Reports the abnormal termination of the program.
Reports the termination when the program gets executed without any error. Reports the termination when some error or interruption occurs during the execution of the program.
The syntax is exit(0); The syntax is exit(1);
The usage of exit(0) is fully portable. The usage of exit(1) is not portable.
The macro used for return code 0 is EXIT_SUCCESS The macro used for return code 1 is EXIT_FAILURE
EXIT_SUCCESS is defined by the standard to be zero. EXIT_FAILURE is not restricted by the standard to be one, but many systems do implement it as one.


Last Updated : 16 Jan, 2020
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads