簡體   English   中英

如何中止c ++程序並以狀態0退出?

[英]how to abort a c++ program and exit with status 0?

我想殺死我的c ++程序並立即終止而不激活任何類型的析構函數,尤其是靜態和全局變量,但我想退出狀態0 - abort()對我不起作用。

有沒有人有辦法解決嗎? 謝謝

也許_exit(0); 你正在尋找什么?

這是閱讀它的手冊頁

從C ++ 11 n3290 - §18.5:

[[noreturn]] void _Exit(int status) noexcept;

程序終止而不執行自動,線程或靜態存儲持續時間對象的析構函數,並且不調用傳遞給atexit()的函數

這實際上是在C99中定義的,但實際上它適用於大量的C ++ 11之前的實現。

采用:

#include <cstdlib>
#include <iostream>

struct test {
  ~test() {
    std::cout << "Goodbye world" << std::endl;
  }
};

int main() {
  test t;
  _Exit(0);
}

來自stdlib.h _Exit(0)怎么樣? (演示: http//ideone.com/ecCgC

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM