system、_wsystem
コマンドを実行します。
重要
この API は、Windows ランタイムで実行するアプリケーションでは使用できません。詳細については、「/ZW でサポートされない CRT 関数」を参照してください。
int system(
const char *command
);
int _wsystem(
const wchar_t *command
);
パラメーター
- command
実行するコマンド。
戻り値
command が NULL であり、コマンド インタープリターがある場合は、0 以外の値を返します。 コマンド インタープリターが見つからなかった場合は、- 0 を返します ENOENTに errno を設定します。 command が NULLである、system はコマンド インタープリターによって返される値を返します。 これはコマンド インタープリターが値 0 を返す場合にのみ、値 0 を返します。 –戻り値 1 はエラーを示し、errno は次の値の 1 に設定されています:
E2BIG
(システムに依存) 引数リスト大きすぎます。ENOENT
コマンド インタープリターが見つかりません。ENOEXEC
コマンド インタープリター ファイルの形式が無効であるため、実行できません。ENOMEM
十分なメモリがコマンドを実行して使用できません; または、使用可能なメモリが破損している; または、表示している呼び出しプロセスが正しく割り当てられていないことを有効でないブロックです。
これらのリターン コードに関する詳細については、" " _doserrno、errno、_sys_errlist、および_sys_nerr " を参照してください。
解説
system 関数は、オペレーティング システム コマンドとして文字列を実行するコマンド インタープリターに command を渡します。 system は コマンド インタープリター CMD.exe ファイルの検索に COMSPEC と PATH 環境変数を使用します。 command が NULLの場合、関数は、コマンド インタープリターが存在するかどうかを確認します。
fflush または _flushallの使用フラッシュして— systemを呼び出す前に、Close、ストリームを明示的に使用します。
_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.
出力
Line one.
Line two.