유니코드 < == > 멀티바이트 VC++변환법

//[유니코드 -> 멀티바이트]
wchar_t* strWC = L"abcde";
char strMB[1024];
WideCharToMultiByte( CP_ACP, 0, strWC, -1, strMB, 1024, NULL, NULL );

유니코드 문자열인 strWC의 내용이 멀티바이트 문자열로 strMB에 들어간다.

함수의 4번째 인자에는 변환할 문자열 길이가 들어가는데 -1로 하게 되면 원본(strWC)문자열에서 NULL문자가 나오는 곳까지 모두 변환하게 된다. 함수의 5번째 인자는 변환해서 들어갈 대상 문자열의 길이이다.

//[멀티바이트->유니코드]
char *strMB = "abcde";
wchar_t strWC[1024];
MultiByteToWideChar( CP_ACP, 0, strMB, -1, strWC, 1024 );

자주 쓰다 보니 여기 정리해둠

크리에이티브 커먼즈 라이선스Linsoo의 저작물인 이 저작물은(는)크리에이티브 커먼즈 저작자표시-동일조건변경허락 4.0 국제 라이선스에 따라 이용할 수 있습니다.

댓글 남기기

이메일은 공개되지 않습니다.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

This site uses Akismet to reduce spam. Learn how your comment data is processed.