_mbclen, mblen, _mblen_l
Uzunluk alır ve bir çok baytlı karakter geçerliliğini belirler.
![]() |
---|
Bu API, Windows çalışma zamanı yürütme uygulamalarda kullanılamaz.Daha fazla bilgi için bkz: /zw ile desteklenmeyen crt işlevlerinin. |
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
);
Parametreler
c
Çok baytlı karakter.mbstr
Çok baytlı karakter bayt sıra adresi.count
Denetlemek için bayt sayısı.locale
Kullanılacak yerel ayarı.
Dönüş Değeri
_mbclen1 veya 2 verir mi göre çok baytlı karakter c 1 ya da 2 bayt uzunluğundadır.Hata dönüş için _mbclen.mbstr Değil NULL, mblen çok baytlı karakter bayt cinsinden uzunluğu döndürür.mbstr Olan NULL veya geniş karakter null karakteri işaret mblen 0 değerini döndürür.Nesne, mbstr noktaları için geçerli bir çok baytlı karakter ilk içinde form değil count karakter mblen –1 değerini döndürür.
Notlar
_mbclen İşlevi, çok baytlı karakter bayt cinsinden uzunluğu döndürür c.c Örtülü bir çağrı tarafından belirlenen bir çok baytlı karakter bayt göstermiyor _ismbblead, sonucu _mbclen az kestirilebilir.
mblenuzunluğu bayt cinsinden döndürür mbstr geçersiz bir çok baytlı karakter ve kod sayfasıyla ilişkili çok baytlı karakter geçerlilik belirler.mbleninceleyen count veya daha az sayıda bayt yer alan mbstr, ama çok MB_CUR_MAX bayt.
Çıkış değeri ayarı tarafından etkilenen LC_CTYPE ; bölgesel ayar kategorisi bkz: setlocale daha fazla bilgi için.Bu işlevler sürümlerini _l soneki kullanan geçerli yerel ayarı için bu yerel ayara bağımlı davranışı; sürümleri ile _l sonek dışında bunun yerine geçirilen yerel ayar parametresi kullandıkları aynı.Daha fazla bilgi için bkz. Yerel ayar.
Genel metin eşlemeleri yordamına girildi
Tchar.h yordamına girildi |
_UNICODE ve _mbcs tanımlanmamış |
Tanımlanan _mbcs |
Tanımlanan _UNICODE |
---|---|---|---|
_tclen |
Makro veya satır içi işlevi için haritalar |
_mbclen |
Makro veya satır içi işlevi için haritalar |
Gereksinimler
Yordamı |
Gerekli başlık |
---|---|
_mbclen |
<mbstring.h> |
mblen |
<stdlib.h> |
_mblen_l |
<stdlib.h> |
Daha fazla uyumluluk bilgileri için bkz: Uyumluluk giriş.
Örnek
// 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 );
}
Çıktı
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 Eşdeğeri
Yoktur. Standart c işlevi çağırmak için kullanın PInvoke. Daha fazla bilgi için bkz: Platform Çağırma örnekleri.
Ayrıca bkz.
Başvuru
Yorumunu çok baytlı karakter dizileri
strlen, strlen_l, wcslen, wcslen_l, _mbslen, _mbslen_l, _mbstrlen, _mbstrlen_l