exit小结
exit函数调用时将做几项主要的工作,一是调用atexit函数指定的函数;二是刷新所有输出流、关闭所有打开的流;三是关闭通过tmpfile()创建的临时文件;最后把控制权返回系统环境。
main()函数结束时也是调用exit()函数来结束的。
在这里有一个很有用的函数atexit(),它可以让用户在main()结束时自动运行用户自定义函数,atexit的原形是:
int atexit(void (*)(void));
main()结束时欲运行的函数先由atexit注册,最多可以注册32个函数,这些函数不能有参数,执行顺序是LIFO
在main函数中我们通常使用return (0);这样的方式返回一个值。
但这是限定在非void情况下的也就是void main()这样的形式。
exit()通常是用在子程序中用来终结程序用的,使用后程序自动结束跳会操作系统。
但在如果把exit用在main内的时候无论main是否定义成void返回的值都是有效的,并且exit不需要考虑类型,exit(1)等价于return (1)
#include <iostream>
#include <string>
using namespace std;
int main()
{
exit (1);//等价于return (1);
}
浙公网安备 33010602011771号