C/C++ 에서 한글을 어떻게 다루는가 : 유니코드와 멀티바이트 변환


C/C++ 에서 한글을 어떻게 다루는가 : 유니코드와 멀티바이트 변환

멀티바이트 관련 함수는 이름에서 str을 mb 또는 wc로 바꾼 형태를 가지고 있습니다. mb는 multibyte, wc는 wide char의 축약으로 생각하면 됩니다. 이 기능을 사용하기 전에 반드시 해야할 일이 있습니다. 이 함수들은 locale에 따라 결과가 달라지기 때문에 setlocale을 하는것을 권장합니다. #include <stdio.h> #include <stdlib.h> #include <string.h> #include <locale.h> ... setlocale(LC_ALL, ""); mblen : 멀티바이트의 바이트 수 한글과 같은 문자들을 char배열에 넣으면 한 문자가 2개의 바이트를 차지하기도 합니다. 이때 한 문자가 몇 바이트를 차지하는지 알려주는 함수가 mblen입니다. strlen은 문자열 전체의 길이를 알려주지만, mblen은 주어진 문자열 시작에 있는 한 멀티바이트 문자의 길이만을 알려줍니다. 예시: 각 문자가 차지하는 바이트를 출력한다. voi...


#16 #유니코드 #멀티바이트 #utf #unicode #multi #mbtowc #mblen #byte #인코딩

원문링크 : C/C++ 에서 한글을 어떻게 다루는가 : 유니코드와 멀티바이트 변환