wctob
Geniş bir karakterin çok baytlı bir karaktere karşılık gelip dönmediğini belirler ve çok baytlı karakter gösterimini döndürür.
Sözdizimi
int wctob(
wint_t wchar
);
Parametreler
wchar
Çevrilecek değer.
Dönüş değeri
Geniş bir karakteri başarıyla dönüştürürse wctob
, yalnızca çok baytlı karakter tek bayt uzunluğundaysa çok baytlı karakter gösterimini döndürür. Geniş bir karakterle karşılaşırsa wctob
, çok baytlı karaktere dönüştürülemez veya çok baytlı karakter tek bir bayt uzunluğunda değilse -1 döndürür.
Açıklamalar
İşlev, wctob
içinde bulunan wchar
geniş bir karakteri, çok baytlı karakter tek bayt uzunluğundaysa, dönüş değeri tarafından int
geçirilen karşılık gelen çok baytlı karaktere dönüştürür.
Başarısız olursa ve karşılık gelen çok baytlı karakter bulunamadıysawctob
, işlev olarak EILSEQ
ayarlanıp errno
-1 döndürür.
Varsayılan olarak, bu işlevin genel durumunun kapsamı uygulama olarak belirlenmiştir. Bu davranışı değiştirmek için bkz. CRT'de Genel durum.
Gereksinimler
Yordam | Gerekli başlık |
---|---|
wctob |
<wchar.h> |
Daha fazla uyumluluk bilgisi için bkz . Uyumluluk.
Örnek
Bu program işlevin wctob
davranışını gösterir.
// crt_wctob.c
#include <stdio.h>
#include <wchar.h>
int main( void )
{
int bChar = 0;
wint_t wChar = 0;
// Set the corresponding wide character to exactly one byte.
wChar = (wint_t)'A';
bChar = wctob( wChar );
if (bChar == WEOF)
{
printf( "No corresponding multibyte character was found.\n");
}
else
{
printf( "Determined the corresponding multibyte character to"
" be \"%c\".\n", bChar);
}
}
Determined the corresponding multibyte character to be "A".
Ayrıca bkz.
Veri dönüştürme
Yerel ayar
_mbclen
, mblen
, _mblen_l
mbstowcs
, _mbstowcs_l
mbtowc
, _mbtowc_l
wctomb
, _wctomb_l
WideCharToMultiByte