언어 자료구조 알고리즘/C11 표준 라이브러리 함수

mbtowc 함수 [표준 라이브러리 함수 가이드]

언제나휴일 2016. 1. 3. 15:53
반응형

mbtowc


헤더 파일

[언어 자료구조 알고리즘/C11 표준 라이브러리 함수] - stdlib.h

 

int mbtowc(wchar_t *pwc,const char *s,size_t n); 멀티 바이트 문자를 와이드 문자로 변환
 
입력 매개 변수 리스트
pwc 유니코드 문자를 저장할 변수
s 멀티바이트 문자가 있는 위치
n 변환할 바이트 수
반환 값
변환할 수 없을 때 -1, 변환한 멀티바이트 문자 수
 
사용 예
//C언어 표준 라이브러리 함수 사용법 가이드
//int mbtowc(wchar_t *pwc, const char *s, size_t n); 멀티 바이트 문자를 와이드 문자로 변환
//멀티 바이트 문자열을 구성하는 문자를 유니코드로 변환
#include <locale.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
 
int main(void)
{
    int  i,j;
    int len;
    int slen;
    char *str = "기억나abc나비야";
    wchar_t warr[100]=L"";
    wchar_t wc;
 
    setlocale(LC_ALL, "Korean");//로케일 설정
    slen = strlen(str);//문자열 길이 계산
    for (i = 0,j=0; i < slen; i++)
    {
        len = mblen(str + i, MB_CUR_MAX);//유니코드로 변환할 때 차지하는 바이트 수       
        mbtowc(&wc, str + i, len);//유니코드 문자로 변환
        warr[j] = wc;//유니코드 배열에 설정
        if (len == 2)//유니코드로 변환할 때 차지하는 바이트가 2일 때
        {
            i++;//i 1 더 증가
        }               
        j++;
    }   
    wprintf(L"%s\n",warr);//유니코드 문자열 출력
    return 0;
}
 
출력
기억나abc나비야

 


사용한 함수

[언어 자료구조 알고리즘/C11 표준 라이브러 함수] - mblen

 

관련 함수

[언어 자료구조 알고리즘/C11 표준 라이브러리 함수] - wctomb

[언어 자료구조 알고리즘/C11 표준 라이브러리 함수] - wctomb_s

[언어 자료구조 알고리즘/C11 표준 라이브러리 함수] - mbstowcs

[언어 자료구조 알고리즘/C11 표준 라이브러리 함수] - mbstowbs_s

[언어 자료구조 알고리즘/C11 표준 라이브러리 함수] - wcstombs

[언어 자료구조 알고리즘/C11 표준 라이브러리 함수] - wcstombs_s

 

반응형