Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Określa, czy znak szeroki odpowiada znakowi wielobajtowemu i zwraca reprezentację znaków wielobajtowych.
Składnia
int wctob(
wint_t wchar
);
Parametry
wchar
Wartość do tłumaczenia.
Wartość zwracana
Jeśli wctob pomyślnie konwertuje znak szeroki, zwraca reprezentację wielobajtowego znaku tylko wtedy, gdy znak wielobajtowy jest długością pojedynczego bajtu. Jeśli wctob napotka szeroki znak, nie może przekonwertować na znak wielobajtowy lub jeśli znak wielobajtowy nie jest długi ani jeden bajt, zwraca wartość -1.
Uwagi
Funkcja wctob konwertuje szeroki znak zawarty w wchar obiekcie na odpowiadający znak wielobajtowy int przekazywany przez wartość zwracaną, jeśli znak wielobajtowy jest długością pojedynczego bajtu.
Jeśli wctob nie można odnaleźć odpowiedniego znaku wielobajtowego, funkcja ustawia errno EILSEQ wartość i zwraca wartość -1.
Domyślnie stan globalny tej funkcji jest zakresem aplikacji. Aby zmienić to zachowanie, zobacz Stan globalny w CRT.
Wymagania
| Procedura | Wymagany nagłówek |
|---|---|
wctob |
<wchar.h> |
Aby uzyskać więcej informacji o zgodności, zobacz Zgodność.
Przykład
Ten program ilustruje zachowanie wctob funkcji.
// 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".
Zobacz też
Konwersja danych
ustawienia regionalne
_mbclen, , mblen_mblen_l
mbstowcs, _mbstowcs_l
mbtowc, _mbtowc_l
wctomb, _wctomb_l
WideCharToMultiByte