Provided by: manpages-pl-dev_4.27.0-1_all bug

NAZWA

       wcrtomb - konwertuje szerokie znaki na sekwencje wielobajtowe

BIBLIOTEKA

       Standardowa biblioteka C (libc, -lc)

SKŁADNIA

       #include <wchar.h>

       size_t wcrtomb(char *restrict s, wchar_t wc, mbstate_t *restrict ps);

OPIS

       Podstawowym  zastosowaniem tej funkcji jest przypadek, gdy s nie jest NULL i wc nie jest szerokim znakiem
       null (L'\0'). Wtedy funkcja wcrtomb() konwertuje szeroki znak wc na  jego  wielobajtową  reprezentację  i
       zachowuje  ją  na  początku  tablicy  znakowej,  wskazywanej przez s. Aktualizuje stan przesunięcia *ps i
       zwraca długość reprezentacji wielobajtowej, tj. liczbę bitów zapisanych do s.

       Innym przypadkiem jest sytuacja, gdy s również nie jest NULL, lecz wc jest szerokim znakiem null (L'\0').
       Wtedy funkcja wcrtomb() zachowuje w s sekwencję przesunięcia wymaganą do przeniesienia *ps z powrotem  do
       stanu  początkowego, a za tą sekwencją doklejony będzie bajt '\0'. Aktualizuje stan przesunięcia *ps (tj.
       przenosi go do stanu początkowego) i zwraca długość sekwencji przesunięcia plus jeden, tj. liczbę  bajtów
       zapisanych do s.

       Trzecim przypadek to s równe NULL. Wtedy wc jest ignorowane, a funkcja zwraca

           wcrtomb(buf, L'\0', ps)

       gdzie buf jest wewnętrznym anonimowym buforem.

       We  wszystkich powyższych przypadkach, jeśli ps jest NULL, to w jego miejscu używany jest anonimowy stan,
       znany tylko funkcji wcrtomb().

WARTOŚĆ ZWRACANA

       Funkcja wcrtomb() zwraca liczbę bajtów, które zostały (lub zostałyby) zapisane  do  tablicy  bajtowej  s.
       Jeśli  wc nie może być reprezentowane w sekwencji wielobajtowej (według bieżących ustawień regionalnych),
       zwracane jest (size_t) -1 i errno jest ustawiane na EILSEQ.

ATRYBUTY

       Informacje o pojęciach używanych w tym rozdziale można znaleźć w podręczniku attributes(7).
       ┌─────────────────────────────────────────────────┬────────────────────────┬────────────────────────────┐
       │ InterfejsAtrybutWartość                    │
       ├─────────────────────────────────────────────────┼────────────────────────┼────────────────────────────┤
       │ wcrtomb()                                       │ Bezpieczeństwo wątkowe │ MT-Unsafe race:wcrtomb/!ps │
       └─────────────────────────────────────────────────┴────────────────────────┴────────────────────────────┘

STANDARDY

       C11, POSIX.1-2008.

HISTORIA

       POSIX.1-2001, C99.

UWAGI

       Zachowanie wcrtomb() zależy od kategorii LC_CTYPE bieżących ustawień regionalnych.

       Podawanie NULL jako ps nie jest bezpieczne dla wątków.

ZOBACZ TAKŻE

       mbsinit(3), wcsrtombs(3)

TŁUMACZENIE

       Tłumaczenie  niniejszej  strony  podręcznika:  Przemek  Borys   <pborys@dione.ids.pl>,   Robert   Luberda
       <robert@debian.org> i Michał Kułach <michal.kulach@gmail.com>

       Niniejsze  tłumaczenie  jest  wolną  dokumentacją.  Bliższe informacje o warunkach licencji można uzyskać
       zapoznając  się  z  GNU General Public License w wersji 3  lub  nowszej.   Nie   przyjmuje   się   ŻADNEJ
       ODPOWIEDZIALNOŚCI.

       Błędy  w  tłumaczeniu  strony  podręcznika  prosimy  zgłaszać  na  adres  listy  dyskusyjnej manpages-pl-
       list@lists.sourceforge.net.

Linux man-pages 6.9.1                          15 czerwca 2024 r.                                     wcrtomb(3)