出口(0)和出口(1)之间的区别
内容
exit(0)和exit(1)是C ++的跳转语句,这些语句使控件在执行程序时从程序中跳出。 exit(0)和exit(1)这两个函数都用于退出程序,但是exit(0)和exit(1)之间有一个主要区别。出口(0)显示程序成功终止,而出口(1)显示程序异常终止。
让我们借助比较表研究exit(0)和exit(1)之间的差异。
- 比较表
- 定义
- 关键差异
- 结论
比较表
比较依据 | 退出(0) | 出口(1) |
---|---|---|
基本的 | 向操作系统报告有关程序的“成功/正常”终止/完成的信息。 | 报告有关程序“异常”终止的操作系统。 |
句法 | 退出(0); | 出口(1); |
表示 | 表示任务已成功执行。 | 这表明由于错误该任务已被中止。 |
巨集 | EXIT_SUCCESS | EXIT_FAILURE |
exit(0)的定义
函数exit(0)是C ++的跳转语句。它用于终止程序或让控件退出程序。它向操作系统报告有关程序成功终止的信息,向操作系统指示该程序的任务已成功完成。用于返回代码“ 0”的宏是“ EXIT_SUCCESS”,因此,您可以通过exit(EXIT_SUCCESS)方式使用它。 exit(0)函数的一般形式是:
void exit(int return_code);
在这里,形式参数“ return_code”是返回到调用函数的值。 returen_code始终为整数类型,因为返回到调用函数的值将为零或非零值。 exit(0)是标准的库函数,如果我们在程序中使用exit(0),则必须使用头文件 #包括 在上面的代码中,我们试图打开一个名为“ myfile.txt”的文件。我们创建了一个指向文件“ myfile.txt”的指针。如果文件“ myfile.txt”确实存在,则指针将指向该文件的地址,并且exit(0)将执行报告操作系统已成功打开文件的操作。如果文件不存在,则指向文件“ myfile.txt”的指针现在将包含NULL,并且exit(1)将执行执行,报告操作系统由于错误或某些原因而无法打开文件。 函数exit(1)也是C ++的跳转语句。 exit(1)也会终止程序,但是异常。 exit(1)向操作系统报告该程序未成功执行,或者由于某些或其他错误而在执行之间被中止。 exit(1)函数在标准库函数中定义,如果您在程序中使用exit(1),则必须特别提及头文件 // pop在栈顶的元素int pop(int stack_name,int size,int Top){如果(Top ==-1){cout <<“ stack is underflow”;出口(1); } else {int s = s;最佳 - ;退货; }} 在这里,如果发现堆栈的顶部为空,即顶部为-1,则定义该函数以将元素弹出到堆栈的顶部。然后,由于堆栈为空,弹出堆栈中最上面的元素的任务没有成功完成,然后返回exit(1)。这表明弹出功能的任务尚未完成。因此,执行异常终止。 如果exit()函数不返回任何内容,则意味着它不想向操作系统揭示程序终止的状态。 为了报告程序终止的状态,可以使用exit()函数。出口(0)向操作系统显示该程序的任务已成功完成。 exit(1)表示程序任务尚未完成,并且程序执行异常中止。
让我们用一个例子来了解exit(0):
exit(1)的定义
返回代码“ 1”的宏是“ EXIT_FAILURE”,因此可以用“ exit(EXIT_FAILURE)”的方式编写。
现在,让我们借助程序来了解exit(1)函数。
相似:
注意:
结论: