Windows 환경에서 Visual Studio와 C++로 콘솔 프로그램을 개발할 때, 한글이 ??? 와 같이 깨져 보이는 현상이 발생하거나 로컬 디버그를 시작할 수 없는 경우.

원인

이 문제의 근본적인 원인은 인코딩 방식의 불일치입니다.

UTF-8로 작성된 한글을 CP949 환경에서 그대로 출력하려고 하니, 글자를 제대로 해석하지 못해 깨져 보이는 것입니다.

해결방법

Windows 시스템 로캘을 UTF-8로 변경

개발자 개인의 PC 환경 자체를 UTF-8 친화적으로 만드는 근본적인 방법입니다.

  1. 제어판 → 국가 또는 지역으로 이동합니다.

    image.png

  2. [관리자 옵션] 탭 → [시스템 로캘 변경...] 버튼을 클릭합니다.

    image.png

  3. Beta: 세계 언어 지원을 위해 Unicode UTF-8 사용 옵션을 체크하고 확인을 누른 뒤, 컴퓨터를 재부팅합니다.

    image.png