相关疑难解决方法(0)

相当于在Windows/MinGW下捕获"CTRL + C"的"SIGINT"(posix)信号

我正在windows下移植一个Linux/gcc程序,并为两者实现了常见的异常处理.我想知道SIGINTMinGW/gcc 的等效信号是什么.

以下是我在Linux下处理它的方法:

static void handler(int sig)
{
    // Catch exceptions
    switch(sig)
    {
    case SIGABRT:
        fputs("Caught SIGABRT: usually caused by an abort() or assert()\n", stderr);
        break;
    case SIGFPE:
        fputs("Caught SIGFPE: arithmetic exception, such as divide by zero\n",
                stderr);
        break;
    case SIGILL:
        fputs("Caught SIGILL: illegal instruction\n", stderr);
        break;
    case SIGINT:
        fputs("Caught SIGINT: interactive attention signal, probably a ctrl+c\n",
                stderr);
        break;
    case SIGSEGV:
        fputs("Caught SIGSEGV: segfault\n", stderr);
        break;
    case SIGTERM:
    default:
        fputs("Caught SIGTERM: a termination request was sent to the …
Run Code Online (Sandbox Code Playgroud)

c++ windows mingw exception sigint

11
推荐指数
1
解决办法
1万
查看次数

标签 统计

c++ ×1

exception ×1

mingw ×1

sigint ×1

windows ×1