abort

中止当前进程并返回错误代码。

说明说明

不要使用此方法关闭但在测试的 Windows 应用商店 app,或调试方案。以编程方式或 UI 方法结束 Windows 应用商店 app 不根据第 3.6 部分允许的。windows 8 个 app 身份验证要求有关更多信息,请参见 应用程序在段 (windows 中 apps)

void abort( void );

返回值

abort 不将控制权返回给调用过程。默认情况下,终止当前进程并返回退出代码 3。

备注

默认情况下,abort 实例打印消息:

“This application has requested the Runtime to terminate it in an unusual way. Please contact the application's support team for more information.""”

然后调用 raise(SIGABRT)。这次执行响应 SIGABRT 信号取决于事件仅对前面的该信号定义对 signal 功能。默认值 SIGABRT 事件是在调用处理以退出代码 3 终止。,将控制权返回给调用进程或操作系统。abort 不刷新流缓冲区也不执行 atexit/_onexit 处理。

abort 确定根据调用实例应用程序类型的消息的目标。控件个应用程序通过 stderr始终接收消息。在单个或多线程的基于 windows 的应用程序,abort 调用 windows MessageBox 函数创建消息框显示包含 确定 按钮的消息。当用户单击 确定时,程序中止。消息可通过调用与相应的参数中 _set_abort_behavior 取消。

当应用程序与运行库时的调试版本链接,abort 有三个按钮创建一个消息框:中止重试忽略。如果用户单击 中止,程序中止。如果用户单击 重试,调试器将调用,并且用户可以调试程序,则实时 (JIT) 调试启用。如果用户单击 忽略abort 继续其正常执行:创建消息框。确定 按钮。

abort 来调用错误报告机制通过向 Microsoft 报告。此行为可通过调用 _set_abort_behavior禁用。

有关调试的 CRT 的更多信息,请参见 调试技术的 CRT

要求

实例

必需的标头

abort

<process.h> 或 <stdlib.h>

示例

如果尝试失败,下面的过程尝试打开文件并中止。

// crt_abort.c
// compile with: /c
// This program demonstrates the use of
// the abort function by attempting to open a file
// and aborts if the attempt fails.

#include  <stdio.h>
#include  <stdlib.h>

int main( void )
{
    FILE    *stream = NULL;
    errno_t err = 0;

    err = fopen_s(&stream, "NOSUCHF.ILE", "r" );
    if ((err != 0) || (stream == NULL))
    {
        perror( "File could not be opened" );
        abort();
    }
    else
    {
        fclose( stream );
    }
}
  
  

.NET Framework 等效项

不适用。若要调用标准 C 函数,请使用 PInvoke。有关更多信息,请参见 平台调用示例

请参见

参考

使用中止

中止功能(c)

处理和环境控件

_exec, _wexec功能

exit, _exit

raise

signal

_spawn, _wspawn功能

_DEBUG

_set_abort_behavior