• Etc.

    wprintf 사용 시, 한글 출력 안 되거나 깨지는 문제 해결 방법

    twitter facebook

    안녕하세요? 착한이입니다.

    Windows 10 에서 Console 형태의 프로그램을 개발하다 보면

    한글 출력을 위해 wprintf 함수를 사용하게 됩니다.

    다음과 같이 한글과 영어가 혼합된 문장을 명령 프롬프트(command line)에 표시하려고 하면

    한글이 출력이 되지 않거나 ??? 와 같이 표시됩니다.

    wprintf(L"우리나라 Korea");

    wprintf 함수 사용 시, 한글 출력에 오류나는 문제는 명령 프롬프트 설정과

    소스 코드를 변경해서 해결 할 수 있습니다.

    본 강좌에서 해결 방법에 대해 알아 보겠습니다.

    1. 명령 프롬프트 설정 변경

    먼저 명령 프롬프트의 "코드 페이지"를 확인해야 합니다.

    명령 프롬프트를 실행하고 아이콘 부분을 클릭하여 속성을 선택합니다.

    다음과 같이 속성 창이 표시 됩니다.

    속성 창에서 "현재 코드 페이지" 부분이 949 인지 확인합니다.

    949가 아니라면 949로 변경하셔야 합니다.



    또는 명령 프롬프트에서 chcp 명령을 입력하여

    다음과 같이 코드 페이지를 확인할 수 있습니다.

    만약 코드 페이지가 949가 아니라면 명령 프롬프트 창에서

    다음과 같이 입력하여 코드 페이지를 변경합니다.

    chcp 949

    코드 페이지를 유니코드로 하셔도 됩니다.

    2. 소스 코드 수정 사항

    명령 프롬프트의 코드 페이지를 변경한 후에도 wprintf 에서 한글 출력에 문제가 있다면

    소스 코드에 다음 사항을 추가 합니다.

    다음 코드가 실행되며, wprintf 함수에서 한글 출력이 정상적으로 될 것입니다.

    _wsetlocale(LC_ALL, L"korean");

    여기까지 wprintf 사용 시, 한글 출력 오류 해결 방법에 대해 알아 보았습니다.

    즐거운 개발하시길 바랍니다.

    ---------------------------------------------------------------------------

    유튜브 채널 방문과 구독 신청 부탁 드립니다.