Aracılığıyla paylaş


_mbclen, mblen, _mblen_l

Uzunluk alır ve bir çok baytlı karakter geçerliliğini belirler.

Önemli notÖnemli

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

Karakter sınıflandırma

Yerel ayar

Yorumunu çok baytlı karakter dizileri

_mbccpy, _mbccpy_l

strlen, strlen_l, wcslen, wcslen_l, _mbslen, _mbslen_l, _mbstrlen, _mbstrlen_l