Share via


wctomb_s, _wctomb_s_l

와이드 문자 해당 멀티 바이트 문자로 변환합니다.버전 wctomb, _wctomb_l 와 보안 기능 향상에 설명 된 대로 CRT의 보안 기능.

errno_t wctomb_s(
   int *pRetValue,
   char *mbchar,
   size_t sizeInBytes,
   wchar_t wchar 
);
errno_t _wctomb_s_l(
   int *pRetValue,
   char *mbchar,
   size_t sizeInBytes,
   wchar_t wchar,
   _locale_t locale
);

매개 변수

  • [out] pRetValue
    수 바이트 또는 결과 나타내는 코드입니다.

  • [out] mbchar
    멀티 바이트 문자 주소입니다.

  • [in] sizeInBytes
    버퍼 크기를 mbchar.

  • [in] wchar
    와이드 문자입니다.

  • [in] locale
    사용 하는 로캘.

반환 값

연결에 성공 하면 0, 실패 시 오류 코드입니다.

오류 조건

mbchar

sizeInBytes

반환 값

pRetValue

NULL

>0

EINVAL

수정 되지 않음

모든

>INT_MAX

EINVAL

수정 되지 않음

모든

너무 작은

EINVAL

수정 되지 않음

위의 오류 조건이 발생 하는 경우 잘못 된 매개 변수 처리기를의 설명에 따라 호출 됩니다 매개 변수 유효성 검사.실행을 계속 수 있으면 wctomb 반환 EINVAL 를 설정 하 고 errno 에 EINVAL.

설명

wctomb_s 변환 함수는 wchar 인수에 해당 하는 멀티 바이트 문자에 결과 저장 하 고 mbchar.프로그램의 모든 지점에서이 함수를 호출할 수 있습니다.

경우 wctomb_s 와이드 문자 변환 여 바이트는 멀티 바이트 문자를 저장 합니다 (는 절대로 보다 큰 MB_CUR_MAX)에 와이드 문자를 가리키는 정수 pRetValue.경우 wchar 와이드 문자 null 문자 ('\ 0' L)입니다 wctomb_s 칠 pRetValue 1을 사용 합니다.경우 대상 포인터 mbchar 가 NULL 인지 wctomb_s 0 배치 pRetValue.현재 로케일에 변환이 불가능 하면 wctomb_s -1 배치 pRetValue.

wctomb_s현재 로케일에 대 한 로케일 종속 정보를 사용합니다. _wctomb_s_l대신 전달 된 로캘을 사용 하는 점을 제외 하 고 동일 합니다.자세한 내용은 로캘를 참조하십시오.

요구 사항

루틴

필수 헤더

wctomb_s

<stdlib.h>

_wctomb_s_l

<stdlib.h>

추가 호환성 정보를 참조 하십시오. 호환성 소개에서 합니다.

예제

이 프로그램의 동작을 보여 줍니다 있는 wctomb 함수입니다.

// crt_wctomb_s.cpp
#include <stdio.h>
#include <stdlib.h>

int main( void )
{
    int i;
    wchar_t wc = L'a';
    char *pmb = (char *)malloc( MB_CUR_MAX );

    printf_s( "Convert a wide character:\n" );
    wctomb_s( &i, pmb, MB_CUR_MAX, wc );
    printf_s( "   Characters converted: %u\n", i );
    printf_s( "   Multibyte character: %.1s\n\n", pmb );
}
  

해당 .NET Framework 항목

해당 사항 없음. 표준 C 함수를 호출할 수 있습니다 PInvoke. 자세한 내용은 플랫폼 호출 예제.

참고 항목

참조

데이터 변환

로캘

_mbclen, mblen, _mblen_l

mbstowcs, _mbstowcs_l

mbtowc, _mbtowc_l

wcstombs, _wcstombs_l

WideCharToMultiByte