[C언어 소스] mblen 함수 사용 예제 코드
//C언어 표준 라이브러리 함수 사용법 가이드
//int mblen(const char *s, size_t n); 멀티 바이트 문자의 유효성을 확인하고 길이 구함
//멀티 바이트 문자를 유니코드로 변환할 때 2 바이트 필요한 문자를 변환하여 출력
#include <locale.h>
#include <stdlib.h>
#include <stdio.h>
int main(void)
{
int i;
int len;
char *str = "기억나abc나비야";
wchar_t wc;
setlocale(LC_ALL, "Korean");//로케일 설정
for (i = 0; i < strlen(str);i++)
{
len = mblen(str+i, MB_CUR_MAX);//유니코드로 변환할 때 차지하는 바이트 수
if (len == 1)
{
printf("<%c:%d> ", str[i], len);
}
if (len == 2)
{
mbtowc(&wc, str + i, 2);//유니코드 문자로 변환
printf("<%lc:%d> ", wc, len);
i++;
}
}
printf("\n");
return 0;
}
출력
<기:2> <억:2> <나:2> <a:1> <b:1> <c:1> <나:2> <비:2> <야:2>
'C언어 > C언어 예제' 카테고리의 다른 글
[C언어 소스] wctomb 함수 사용 예제 코드(와이드 문자를 멀티 바이트 문자로 변환) (0) | 2016.05.05 |
---|---|
[C언어 소스] mbtowc 함수 사용 예제 코드(멀티 바이트 문자를 와이드 문자로 변환) (0) | 2016.05.05 |
[C언어 소스] lldiv 함수 사용 예제 코드 (0) | 2016.05.05 |
[C언어 소스] ldiv 함수 사용 예제 코드 (0) | 2016.05.05 |
[C언어 소스] div 함수 예제 코드 (나누기 연산의 몫과 나머지 계산) (0) | 2016.05.05 |