_set_error_mode
修改 __error_mode 判斷 C 執行階段會將錯誤寫入錯誤訊息可能會關閉程式的非預設的位置。
重要
這個應用程式開發介面無法用來在 Windows 執行階段中執行的應用程式。如需詳細資訊,請參閱 CRT 函式不支援使用 /ZW。
int _set_error_mode(
int modeval
);
參數
- modeval
錯誤訊息的目的地。
傳回值
如果發生錯誤,則傳回舊設定或 -1。
備註
藉由將 __error_mode的值控制錯誤輸出接收。 例如,您可以將輸出導向至標準錯誤或使用 MessageBox 應用程式開發介面。
modeval 參數可以設定為下列其中一個值。
參數 |
描述 |
---|---|
_OUT_TO_DEFAULT |
__app_type取決於錯誤接收。 |
_OUT_TO_STDERR |
錯誤接收是標準錯誤。 |
_OUT_TO_MSGBOX |
錯誤接收的訊息方塊。 |
_REPORT_ERRMODE |
報告目前 __error_mode 值。 |
如果除了所列的以外的值,則會將無效的參數叫用處理常式,如 參數驗證中所述。 如果執行允許繼續_set_error_mode ,將 errno 設為 EINVAL 並傳回 -1。
當它使用了 判斷提示時, _set_error_mode 會顯示在對話方塊的失敗的陳述式並讓您選擇 Ignore 按鈕的選取,因此您可以繼續執行程式。
需求
程序 |
必要的標頭檔 |
---|---|
_set_error_mode |
<stdlib.h> |
範例
// crt_set_error_mode.c
// compile with: /c
#include <stdlib.h>
#include <assert.h>
int main()
{
_set_error_mode(_OUT_TO_STDERR);
assert(2+2==5);
}