VSC에서 디버깅할 때 입출력이 없는 코드는 상관없지만, 입출력이 있는 코드를 디버깅하면 VSC 디버그 콘솔에서 입력과 출력 모두 안되는 상황이 일어난다.
그 이유는 VSC의 디버그 콘솔이 C++ 프로그램의 입출력을 지원하지 않기 때문인데 해결방법은 굉장히 간단하다.
VSC의 디버그 콘솔이 아니라 외부 콘솔을 사용하면 된다.
code-runner 버튼 옆에 있는 디버그 구성 추가 버튼을 누르고 활성파일빌드를 선택하면 launch.json이라는 파일이 생성되는데 이 파일에 있는 configurations에서 externalConsole의 값을 true로 변경해주면 된다.
이는 디버깅 콘솔로 VSC 내부 콘솔이 아니라 외부 콘솔(터미널)을 사용한다는 뜻이다.
이렇게 설정하면 디버깅 시 터미널 창이 뜨면서 입출력이 정상적으로 이뤄진다.
이때 맥의 기본 터미널이 나오는 데 이를 Iterm으로 변경하고 싶으면 VSC 설정(⌘ + ,)에서 osxExec를 검색한 후 iTerm.app으로 변경하면 된다.
'개발 관련 Tips > C , C++' 카테고리의 다른 글
mac VSC에서 디버깅, code-runner의 차이점 (Feat. gcc) (0) | 2022.12.23 |
---|