• C++ abort 函数


     对于一个用C++写的程序,被加载至内存后运行,最终走向死亡。程序的死亡大致有三种:

    • 自然死亡,即无疾而终,通常就是main()中的一个return 0;
    • 自杀,当程序发现自己再活下去已经没有任何意义时,通常会选择自杀。当然,这种自杀也是一种请求式的自杀,即请求OS将自己毙掉。有两种方式:void exit(int status)和void abort(void)。
    • 他杀,同现实不同的是,程序家族中的他杀行径往往是由自己至亲完成的,通常这个至亲就是他的生身父亲(还是母亲?)。C++并没有提供他杀的凶器,这些凶器往往是由OS直接或者间接(通过一些进程库,如pthread)提供的。

      自然死是最完美的结局,他杀是我们最不愿意看到的,自杀虽是迫不得已,但主动权毕竟还是由程序自己掌控的;abort被调用时,程序将直接退出,任何对象的析构函数都不会调用

    函数名: abort

     

      头文件:#include <stdlib.h>

     

      功 能: 异常终止一个进程。中止当前的过程,返回一个错误代码。错误代码的缺省值是3

     

      中止一个程序异常终止的过程。

     

      该函数产生SIGABRT信号,默认情况下导致程序终止不成功的终止错误代码返回到主机环境。

     

      自动或静态存储持续时间的对象,而无需调用任何atexit函数,析构函数不执行程序终止。函数永远不会返回到其调用者。

     

      用 法: void abort(void);

  • 相关阅读:
    异步fifo设计(2)
    异步fifo设计(1)
    systemverilog学习(9)assertion
    cordic算法
    Booth除法器设计
    systemverilog学习(8)randomization随机化
    systemverilog学习(7)OOP
    折线法——卡特兰数证明
    【BZOJ 4004】 装备购买(高斯消元+贪心)
    POJ 3322 Bloxorz
  • 原文地址:https://www.cnblogs.com/maqiang/p/2476695.html
Copyright © 2020-2023  润新知