Programming/C&CPP
wcout, wprintf 등에서 한글 출력 안될 때 해결법
psychoria
2015. 1. 19. 00:00
반응형
유니코드 프로젝트에서 wcout이나 wprintf를 사용했을 때 한글이 출력이 안되는 문제가 생길 때가 있습니다.
이럴 때 문제를 해결하기 위해서 setlocale() 함수를 사용하면 됩니다.
main 함수 등에서 다음과 같이 호출하면 됩니다.
setlocale(LC_ALL, "");
이렇게 하면 시스템의 로케일을 따라가기 때문에 한글 윈도우에서 정상적으로 한글이 출력됩니다.
""를 "korean"으로 변경하면 한글로 특정해서 호출할 수도 있습니다.
wcout에서 한글이 정상적으로 출력되지 않을 때 다음과 같은 방법으로 처리할 수도 있습니다.
std::wcout.imbue(std::locale(""));
이후에 wcout을 호출하게 되면 정상적으로 한글이 출력되는 것을 알 수 있습니다.
반응형