다음을 통해 공유


system, _wsystem

명령을 실행합니다.

중요

이 API는 Windows 런타임에서 실행되는 응용 프로그램에서 사용할 수 없습니다.자세한 내용은 /ZW에서 지원하지 않는 CRT 함수를 참조하십시오.

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

매개 변수

  • command
    실행할 명령입니다.

반환 값

만약 command 가 NULL이고 명령 인터프리터가 발견되면 0이 아닌 값을 반환합니다. 만약 명령 인터프리터가 없으면 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일 경우, 함수는 명령 인터프리터가 존재하는지를 확인 합니다.

당신은 반드시 ( 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.

Output

Line one.
Line two.

해당 .NET Framework 항목

참고 항목

참조

프로세스 및 환경 제어

_exec, _wexec 함수

exit, _exit

_flushall

_spawn, _wspawn 함수