system、_wsystem
コマンドを実行します。
重要 |
---|
この API は Windows ランタイムで実行されるアプリケーションで使用することはできません。詳細については、でサポート /ZW CRT 関数" "を参照してください。 |
int system(
const char *command
);
int _wsystem(
const wchar_t *command
);
パラメーター
- command
実行するコマンド。
戻り値
command が NULL であり、コマンド インタープリターがある場合は、以外の値を返します。コマンド インタープリターがない場合、は 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を呼び出す前に、ストリームを閉じるに明示的になります。
_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.