Aracılığıyla paylaş


wctomb_s, _wctomb_s_l

Geniş bir karakter için karşılık gelen çok baytlı karakter dönüştürür.Bir sürümü wctomb, _wctomb_l açıklandığı gibi güvenlik geliştirmeleri ile crt güvenlik özellikleri.

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
);

Parametreler

  • [Çıkış]pRetValue
    Sonucu gösteren bir kod veya bayt sayısı.

  • [Çıkış]mbchar
    Çok baytlı karakter adresidir.

  • [in]sizeInBytes
    Arabellek boyutu mbchar.

  • [in]wchar
    Geniş bir karakter.

  • [in]locale
    Kullanılacak yerel ayarı.

Dönüş Değeri

Sıfır başarılı olursa, hata durumunda bir hata kodu.

Hata koşulları

mbchar

sizeInBytes

Dönüş değeri

pRetValue

NULL

> 0

EINVAL

modifiye edilmemiş

herhangi bir

>INT_MAX

EINVAL

modifiye edilmemiş

herhangi bir

çok küçük

EINVAL

modifiye edilmemiş

Yukarıdaki hata durumlardan herhangi biri meydana gelirse, geçersiz parametre işleyicisi, açıklandığı şekilde çağrılır Parametre doğrulama.Yürütülmesine devam etmek için izin verilip verilmediğini wctomb döndüren EINVAL ve errno için EINVAL.

Notlar

wctomb_s İşlev dönüştürür, wchar bağımsız değişkenine karşılık gelen çok baytlı karakter at sonucu depolar ve mbchar.Herhangi bir programda herhangi bir noktasından işlevini çağırabilirsiniz.

wctomb_s Geniş karakter dönüştürür çok baytlı bir karakter, bayt sayısını koyar (olduğu hiçbir zaman büyük MB_CUR_MAX) geniş karaktere göre sıralanmasını tamsayı olarak pRetValue.wchar (l '\0'), geniş karakter null karakteri wctomb_s doldurur pRetValue 1.Hedef işaretçi mbchar null, wctomb_s 0 koyar pRetValue.Geçerli yerel ayarı dönüşümü mümkün değilse, wctomb_s –1 koyar pRetValue.

wctomb_sGeçerli yerel ayarı için yerel ayara bağımlı bilgileri kullanır; _wctomb_s_lBunun yerine geçirilen yerel kullanır dışında aynıdır.Daha fazla bilgi için bkz. Yerel ayar.

Gereksinimler

Yordamı

Gerekli başlık

wctomb_s

<stdlib.h>

_wctomb_s_l

<stdlib.h>

Ek uyumluluk bilgileri için bkz: Uyumluluk giriş.

Örnek

Bu programın davranışını gösterilmektedir wctomb işlevi.

// 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 Eşdeğeri

Yoktur. Standart c işlevi çağırmak için kullanmak PInvoke. Daha fazla bilgi için bkz: Platform Çağırma örnekleri.

Ayrıca bkz.

Başvuru

Veri Dönüştürme

Yerel ayar

_mbclen, mblen, _mblen_l

mbstowcs, _mbstowcs_l

mbtowc, _mbtowc_l

wcstombs, _wcstombs_l

WideCharToMultiByte