退出C中的功能

8 c posix exit

C中的exit(),_ exit()_Exit()有什么区别?

我该如何决定使用哪个?

在bash,

男子2出口

给了我页面_EXIT(2),而

男子3出口

给了页面EXIT(3).

Svi*_*ack 7

exit() 清理后终止.

_exit() 通话结束后立即终止.

如果exit()在调用函数时有一些堆栈损坏,程序可能会关闭分段错误,如果您正在使用_exit(),程序将以快速模式退出.

http://msdn.microsoft.com/en-us/library/6wdz5232.aspx你有

exit() - 执行完整的C库终止过程,终止过程,并使用提供的状态代码退出.

_exit() - 执行快速C库终止过程,终止过程,并使用提供的状态代码退出.

_cexit() - 执行完整的C库终止过程并返回给调用者,但不终止该过程.

_c_exit() - 执行快速C库终止过程并返回给调用者,但不终止该过程.

  • 调用`exit()`.其他的是实现细节,在构建框架时,在某些罕见的条件之外通常不那么有用. (4认同)

Jen*_*edt 7

C99中的规范是exit_Exit.

两者之间的区别在于,exit它还执行可以注册atexit和关闭流等的处理程序,_Exit而不调用atexit例程,可能会或可能不会正确关闭流.

_exit来自POSIX并具有类似的属性,_Exit因为它可以保证正确关闭流.

总之,只要你能使用exit,这是终止的最简洁方法.