Udostępnij przez


wctob

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 errnoEILSEQ 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