2009/07/23

UNICODE 컴파일시 콘솔에 한글 출력하기


  1. _tprintf()

  2. 여기서 setlocale을 지정하지 않으면 프로젝트 속성 항목의
    [문자집합:설정 안함]에서는 정상적으로 한글이 나오지만
    [문자집합:유니코드 사용]에서는 한글을 볼 수 없게 된다.


  3. cout

  4. imbue함수를 통해 locale을 지정해 주면 된다.
    _Loc: A local string.
    Return Value: The Previous locale.

    예제: 이 함수는 locale객체를 인자로 받게끔 되 있는데,
    이 locale객체의 첫번째 인자는 구현하려는 locale 문자열을, 두번째 인자(생략가능)는 적용할 범위를 설정한다.
    locale::ctype으로 지정하면 문자열만, locale::all 을 지정하면 통화, 숫자등 모든 출력 값들이 시스템 국가별 설정에 영향을 받게된다.


한줄요약:
콘솔프로그램 만들때 다음 코드를 아무생각 없이(?) main함수 첫째줄에 때려박으면 다 해결된다.