1203실습 - kyagrd/cprog2018Fall GitHub Wiki
테스트 방법
윈도우 Desktop 아래 코드블럭 프로젝트를 만드는 것으로 가정하겠습니다.
- 코드블럭에서 console application 프로젝트로 C언어 선택해 player라는 프로젝트를 만든다.
- player 프로젝트의 main.c의 내용으로 과목 저장소
player.c
의 내용을 복사하고 build - 코드블럭에서 console application 프로젝트로 C++언어 그대로 두고 dummydealer라는 프로젝트를 만든다.
- Setting > Compiler 메뉴에서 ISO C++ 2011 을 체크해야 오류 없이 컴파일될 것이다 (그냥 되면 안해도 되지만)
- dummydealer 프로젝트의 main.c의 내용으로 과목 저장소
dummydealer.cpp
의 내용을 복사하고 build (이 때 dummydealer라고 코드블럭 좌측 디렉토리/파일 나오는 트리뷰에 dummydealer를 우클릭해 build를 선택하면 확실함) - 이렇게 하면 Desktop 디렉토리 밑에 다음과 같은 위치에 실행파일 두 개가 만들어질 것이다.
player/bin/Debug/player.exe
dummydealer/bin/Debug/dummydelaer.exe
- 위 실행파일을 따로따로 명령창에 실행시켜 서로의 출력을 입력으로 쓰도록 복붙하는 것이 기본적인 아이디어지만 시간이 많이 걸린다.
- 그래서 bash라는 유닉스/리눅스 쉘 프로그램을 활용하는데 윈도우즈에는 별도 설치 필요.
- 구글에서 Download Git 으로 검색해서 나오는 걸 설치하면 bash도 딸려서 설치됨
- 시작 메뉴나 그 근처에 실행프로그램 이름으로 검색할 수 있는 기능으로 bash를 검색해서 "Git bash"라고 나오는 것을 실행
- Desktop 디렉토리로 찾아들어가기 (cd 명령어를 이용해 디렉토리 변경)
- 제대로 디렉토리가 변경되었으면 명령줄에 다음과 같이 나온다 (Desktop 상위 디렉토리가 다른 것이 또 있는 경우도 있음)
유저이름@컴퓨터이름 MINGW64 ~/Desktop
- 이제 이 Git bash 상에서 과목 저장소에 있는
coproc.sh
의 내용을 윈도우즈에서 만들어진 실행파일들 위치에 맞게 적절히 수정한 것을 만들어 실행하면 된다. 예를 들어 다음과 같은 내용으로 두 개의 파일을 작성해 Desktop 디렉토리에 저장해 놓을 수 있다melast.sh
파일 내용:
# player goes last
coproc ./dummydealer/bin/Debug/dummydealer.exe
./player/bin/Debug/player.exe <&"${COPROC[0]}" >&"${COPROC[1]}"
mefirst.sh
파일 내용:
# player goes first
coproc ./dummydealer/bin/Debug/dummydealer.exe 1
./player/bin/Debug/player.exe 1 <&"${COPROC[0]}" >&"${COPROC[1]}"
이렇게 한 다음 Git bash에서 다음 명령어를 실행시켜 26번의 카드를 비교하는 한 게임씩 같은 카드 내용으로 순서 번갈아 가며 각각 실행해 볼 수 있다.
bash melast.sh
bash mefirst.sh