exit c+
exit() is a library function in C/C++ programming language, it is used to terminate the calling process (function) immediately i.e. we can say it is used for the normal program termination and also perform the several cleanup steps.
exit()是C / C ++编程语言中的一个库函数,它用于立即终止调用进程(函数),即可以说它用于正常程序终止并执行几个清理步骤。
Syntax:
句法:
void exit(int status);
Parameter(s): status – defines the exit status.
参数: status –定义退出状态。
There are two status that we can define,
我们可以定义两种状态,
Value | Macro | Description |
---|---|---|
0 | EXIT_SUCCESS | It defines that the termination is on the success of the program. |
1 | EXIT_FAILURE | It defines that the termination is on the failure of the program. |
值 | 巨集 | 描述 |
---|---|---|
0 | EXIT_SUCCESS | 它定义了程序成功的终止。 |
1个 | EXIT_FAILURE | 它定义终止是在程序失败时进行的。 |
Return value: The return type of the function is void, it returns nothing.
返回值:函数的返回类型为void ,不返回任何内容。
1) exit(0) or exit(EXIT_SUCCESS)
1)退出(0)或退出(EXIT_SUCCESS)
exit(0) is used to terminate the program by specifying the successful execution of the program.
exit(0)用于通过指定程序的成功执行来终止程序。
Syntax:
句法:
exit(0);
2) exit(1) or exit(EXIT_FAILURE)
2)退出(1)或退出(EXIT_FAILURE)
exit(1) is used to terminate the program by specifying the successful execution of the program.
exit(1)用于通过指定程序的成功执行来终止程序。
Syntax:
句法:
exit(1);
Example 1:
范例1:
Here, we are reading two numbers and then dividing them, if the second number is 0 then exiting the program using exit(1) and if the second number is not 0 then performing the division operation and exiting the program using exit(0).
在这里,我们正在读取两个数字,然后将它们相除,如果第二个数字为0,则使用exit(1)退出程序;如果第二个数字不为0,则执行除法运算,然后使用exit(0)退出程序。
// C++ program to demonstrate the
// example of exit(0) and exit(1)
#include <iostream>
using namespace std;
int main()
{
int a;
int b;
cout << "Enter divisor (value of a): ";
cin >> a;
cout << "Enter dividend (value of b): ";
cin >> b;
cout << "a: " << a << endl;
cout << "b: " << b << endl;
if (b == 0) {
cout << "Dividend must not be 0..." << endl;
// EXIT_FAILURE
exit(1);
}
cout << a << "/" << b << " : " << (float)a / (float)b << endl;
// EXIT_SUCCESS
exit(0);
}
Output:
输出:
RUN 1:
Enter divisor (value of a): 10
Enter dividend (value of b): 3
a: 10
b: 3
10/3 : 3.33333
RUN 2:
Enter divisor (value of a): 10
Enter dividend (value of b): 0
a: 10
b: 0
Dividend must not be 0...
Example 2:
范例2:
Here, we are opening a file in read-only mode, if the file doe not exit then exiting the program using exit(1), and file exists then closing it and exiting the program using exit(0).
在这里,我们以只读模式打开文件,如果文件没有退出,则使用exit(1)退出程序,并且文件存在,然后将其关闭并使用exit(0)退出程序。
// C++ program to demonstrate the
// example of exit(0) and exit(1)
#include <stdio.h>
#include <stdlib.h>
int main()
{
FILE* fPtr;
// opening the file
fPtr = fopen("hello1.txt", "r");
// checking whether file exists or not
if (fPtr == NULL) {
printf("oops, file does not exist...");
// EXIT_FAILURE
exit(1);
}
printf("File opened successfully...");
// clsoing the file
fclose(fPtr);
// EXIT_SUCCESS
exit(0);
}
Output:
输出:
oops, file does not exist...
出口(0)和出口(1)之间的区别 (Difference between exit(0) and exit(1))
exit(0) | exit(1) |
---|---|
It is used to terminate the program normally by specifying that operation is successful. | It is also used to terminate the program normally by specifying that operation is not successful. |
The syntax is,
| The syntax is, |
0 is the value of EXIT_SUCCESS. Thus, we can also use exit(EXIT_SUCCESS) instead of exit(0). | 1 is the value of EXIT_FAILURE. Thus, we can also use exit(EXIT_FAILURE) instead of exit(1). |
exit(0) is fully portable. | exit(1) is not fully portable. |
exit(0) defines the clean exit without any error. | exit(1) defines that there was an error in the program and the program is terminated. |
退出(0) | 出口(1) |
---|---|
通过指定操作成功,它通常用于终止程序。 | 通过指定操作不成功,它也可用于正常终止程序。 |
语法是
| 语法是 |
0是EXIT_SUCCESS的值。 因此,我们也可以使用exit(EXIT_SUCCESS)代替exit(0) 。 | 1是EXIT_FAILURE的值。 因此,我们也可以使用exit(EXIT_FAILURE)代替exit(1) 。 |
exit(0)是完全可移植的。 | exit(1)并非完全可移植。 |
exit(0)定义干净出口,没有任何错误。 | exit(1)定义程序中存在错误,并且程序终止。 |
翻译自: https://www.includehelp.com/cpp-tutorial/exit-0-vs-exit-1-in-c-cpp-with-examples.aspx
exit c+