_mbclen, mblen, _mblen_l
길이 가져오고 멀티 바이트 문자의 유효성을 확인 합니다.
중요 |
---|
이 API는 Windows 런타임에서 실행 되는 응용 프로그램에서 사용할 수 없습니다.자세한 내용은 /zw에 지원 되는 CRT 함수. |
size_t _mbclen(
const unsigned char *c
);
int mblen(
const char *mbstr,
size_t count
);
int _mblen_l(
const char *mbstr,
size_t count,
_locale_t locale
);
매개 변수
c
멀티 바이트 문자입니다.mbstr
멀티 바이트 문자 바이트 시퀀스의 주소입니다.count
바이트 수를 확인 합니다.locale
사용 하는 로캘.
반환 값
_mbclen1 또는 2를 반환 여부에 따라 멀티 바이트 문자 c 1 또는 2 바이트 길이입니다.에 대 한 반환 됩니다 오류 _mbclen.경우 mbstr 수 없습니다 NULL, mblen 바이트는 멀티 바이트 문자 길이 반환 합니다.경우 mbstr 는 NULL 또는 와이드 문자 null 문자를 가리키는 mblen 0을 반환 합니다.경우 개체는 mbstr 포인트로 내 첫 번째는 유효한 멀티 바이트 문자를 형성 하지 않습니다 count 자 mblen – 1을 반환 합니다.
설명
_mbclen 함수는 멀티 바이트 문자 바이트 길이 반환 c.경우 c 따라 암시적으로 호출 하 여 멀티 바이트 문자의 선행 바이트를 가리키지 않는 경우 _ismbblead, 결과를 _mbclen 를 예측할 수 없습니다.
mblen길이 바이트 단위로 반환 합니다. mbstr 는 유효한 멀티 바이트 문자 코드 페이지와 관련 된 멀티 바이트 문자 유효성을 확인 하면 됩니다.mblen검사 count 또는 적은 바이트가 포함 된 mbstr, 최대 MB_CUR_MAX 바이트입니다.
출력 값의 설정에 의해 영향을 받지는 LC_CTYPE 범주 설정 로케일입니다. 볼 setlocale 에 대 한 자세한 내용은.없이 이러한 함수 버전을 _l 접미사는 현재 로케일에 대 한이 로케일 종속 동작; 사용 버전으로는 _l 접미사는 대신 전달 로캘 매개 변수를 사용 하는 경우를 제외 하 고 동일 합니다.자세한 내용은 로캘을 참조하십시오.
일반 텍스트 루틴 매핑
Tchar.h 루틴 |
_UNICODE 및 _mbcs가 정의 되어 있지 않습니다 |
_Mbcs가 정의 |
_Unicode가 정의 |
---|---|---|---|
_tclen |
매크로 또는 인라인 함수에 매핑 |
_mbclen |
매크로 또는 인라인 함수에 매핑 |
요구 사항
루틴 |
필수 헤더 |
---|---|
_mbclen |
<mbstring.h> |
mblen |
<stdlib.h> |
_mblen_l |
<stdlib.h> |
자세한 호환성에 대 한 내용은 호환성 소개에서 합니다.
예제
// crt_mblen.c
/* illustrates the behavior of the mblen function
*/
#include <stdlib.h>
#include <stdio.h>
int main( void )
{
int i;
char *pmbc = (char *)malloc( sizeof( char ) );
wchar_t wc = L'a';
printf( "Convert wide character to multibyte character:\n" );
wctomb_s( &i, pmbc, sizeof(char), wc );
printf( " Characters converted: %u\n", i );
printf( " Multibyte character: %x\n\n", *pmbc );
i = mblen( pmbc, MB_CUR_MAX );
printf( "Length in bytes of multibyte character %x: %u\n", *pmbc, i );
pmbc = NULL;
i = mblen( pmbc, MB_CUR_MAX );
printf( "Length in bytes of NULL multibyte character %x: %u\n", pmbc, i );
}
Output
Convert wide character to multibyte character:
Characters converted: 1
Multibyte character: 61
Length in bytes of multibyte character 61: 1
Length in bytes of NULL multibyte character 0: 0
해당 .NET Framework 항목
해당 사항 없음. 표준 C 함수를 호출 하려면 PInvoke. 자세한 내용은 플랫폼 호출 예제.
참고 항목
참조
strlen, strlen_l, wcslen, wcslen_l, _mbslen, _mbslen_l, _mbstrlen, _mbstrlen_l