共用方式為


system _wsystem

執行命令。

重要

這個應用程式開發介面無法用來在 Windows 執行階段中執行的應用程式。如需詳細資訊,請參閱 CRT 函式不支援使用 /ZW

int system(
   const char *command 
);
int _wsystem(
   const wchar_t *command 
);

參數

  • command
    要執行的命令。

傳回值

如果 command 是 NULL ,並尋找命令的編譯器,傳回非零的值。 如果命令是編譯器找不到傳回 0,並將 errno 設定為 ENOENT。 如果 command 不是 NULL, system 會傳回由命令直編譯器傳回的值。 在命令中會傳回值 0,則會傳回值 0。 傳回值為 1 表示錯誤,因此, errno 會設為下列其中一個值:

  • E2BIG
    依系統而定) 的引數清單 (太大。

  • ENOENT
    找不到命令直編譯器。

  • ENOEXEC
    因為格式無效,命令解譯器檔案無法執行。

  • ENOMEM
    沒有足夠的記憶體可用執行命令;或可用記憶體損毀;或不是有效的區塊存在,表示將呼叫不正確的工作流程。

請參閱 _doserrno、errno、_sys_errlist 和 _sys_nerr 以取得這些傳回碼的詳細資訊。

備註

system 函式會將 command 傳遞至命令的編譯器,執行字串做為作業系統命令。 system 使用 COMSPEC 和 PATH 環境變數尋找命令解譯器檔案 CMD.exe。 如果 command 是 NULL,函式會檢查命令直編譯器是否存在。

在呼叫 system之前,則清除由使用 fflush 或 _flushall明確—或關閉資料流。

_wsystem 是 system 的寬字元版本。傳遞給 _wsystem 的參數 command 的寬字元字串。 這三個函式其餘部分的運作相同。

泛用文字常式對應

TCHAR.H 常式

未定義 _UNICODE & _MBCS

已定義 _MBCS

已定義 _UNICODE

_tsystem

system

system

_wsystem

需求

程序

必要的標頭檔

system

<process.h> 或 <stdlib.h>

_wsystem

<process.h> 或 <stdlib.h> 或 <wchar.h>

如需其他相容性資訊,請參閱 相容性

範例

這個範例會使用 system 的文字檔。

// crt_system.c

#include <process.h>

int main( void )
{
   system( "type crt_system.txt" );
}

輸入:crt_system.txt

Line one.
Line two.

277bwbdz.collapse_all(zh-tw,VS.110).gifOutput

Line one.
Line two.

.NET Framework 對等用法

請參閱

參考

處理程序和環境控制

_exec,_wexec 函式

exit、_exit

_flushall

_spawn,_wspawn 函式