주어진 작업은 C/C++에서 system()의 작동을 보여주는 것입니다.
system() 함수는 C/C++ 표준 라이브러리의 일부입니다. 명령어 처리기나 운영체제의 단말에서 실행할 수 있는 명령어를 전달하기 위해 사용되며, 최종적으로 완료된 명령어를 반환합니다.
이 함수를 호출하려면
구문
구문은 다음과 같습니다 -
int system(char command)
이 함수는 명령이 오류 없이 실행되면 0을 반환합니다.
예
Input: system(“date”) Output: The current date is: Fri 12/27/2019
설명 − 다음 예는 시스템 기능을 사용하여 현재 날짜를 표시하는 방법을 보여줍니다. 출력은 운영 체제의 명령 프로세서 내부에 표시됩니다. 이것은 시스템() 함수를 사용하여 터미널 명령 또는 명령 프로세서 내부에서 사용되는 명령을 실행하는 방법을 보여줍니다.
예
Input: system(“color a”) Output:
다음 예제는 실행할 명령이 포함된 문자열을 단순히 전달하여 system() 함수를 사용하는 방법을 보여줍니다. 여기에 명령 프로세서에서 텍스트의 색상을 변경하는 데 사용되는 "색상" 명령이 제공되었으며 여기에서는 제대로 작동합니다.
아래 프로그램에서 사용하는 접근 방식은 다음과 같습니다. -
- 먼저 char 유형의 변수를 만들고 적절한 크기(예:cmd[10])를 지정하여 이 문자열을 명령 저장에 사용할 수 있도록 합니다.
- 그런 다음 strcpy() 함수를 사용하여 이전에 생성한 문자열에 원하는 명령을 저장합니다. (strcpy() 함수를 사용하려면
헤더 파일을 포함하세요) - 이제 명령을 저장하는 문자열을 시스템 함수에 전달합니다.
알고리즘
Start Step 1-> In function main() Declare a char cmd[10] Call function strcpy(cmd, “dir”) Call function system(cmd) Stop
예
#include <iostream> #include<stdlib.h> #include<string.h> using namespace std; int main() { char cmd[10]; strcpy(cmd,"dir"); system(cmd); return0; }
출력
위의 코드를 실행하면 다음과 같은 출력이 생성됩니다 -
12/25/2019 10:04 AM <DIR> . 12/25/2019 06:33 AM <DIR> .. 12/24/2019 09:56 AM <DIR> bin 12/25/2019 10:04 AM 183 main.cpp 12/25/2019 10:04 AM 1,564,278 main.exe 12/25/2019 06:33 AM 1,046 main.o 12/24/2019 06:33 AM <DIR> obj 12/24/2019 06:33 AM 1,062 Test.cbp 12/24/2019 06:36 AM 358 Test.layout 5 File<s> 1,566,927 bytes 4 Dir<s> 169,866,692,120 bytes free
여기서 우리는 시스템 기능 "dir" 명령을 입력으로 주었으므로 그 대가로 컴퓨터에 있는 모든 디렉토리가 출력으로 표시됩니다.
다음 방법을 사용하여 운영 체제에서 명령 프로세서를 사용할 수 있는지 여부를 확인할 수 있습니다. -
이것은 system() 함수에 Null 포인터를 전달하여 수행할 수 있습니다. 시스템이 0이 아닌 값을 반환하면 명령 프로세서를 사용할 수 있음을 의미합니다.
그렇지 않으면 시스템이 0을 반환하면 명령 처리기가 존재하지 않고 system() 함수를 호출할 수 없음을 의미합니다.
예
#include <iostream> #include<stdlib.h> using namespace std; int main() { if(system(Null)) cout<<”Command Processor is present”; else cout<<”Command processor is not present”; return 0; }