.\" -*- coding: UTF-8 -*-
'\" t
.\" Copyright (c) Bruno Haible <haible@clisp.cons.org>
.\"
.\" SPDX-License-Identifier: GPL-2.0-or-later
.\"
.\" References consulted:
.\"   GNU glibc-2 source code and manual
.\"   Dinkumware C library reference http://www.dinkumware.com/
.\"   OpenGroup's Single UNIX specification http://www.UNIX-systems.org/online.html
.\"   ISO/IEC 9899:1999
.\"
.\"*******************************************************************
.\"
.\" This file was generated with po4a. Translate the source file.
.\"
.\"*******************************************************************
.TH mbtowc 3 "5 lutego 2023 r." "Linux man\-pages 6.03" 
.SH NAZWA
mbtowc \- przekształca ciąg wielobajtowy na znak szeroki
.SH BIBLIOTEKA
Standardowa biblioteka C (\fIlibc\fP, \fI\-lc\fP)
.SH SKŁADNIA
.nf
\fB#include <stdlib.h>\fP
.PP
\fBint mbtowc(wchar_t *restrict \fP\fIpwc\fP\fB, const char \fP\fIs\fP\fB[restrict .\fP\fIn\fP\fB], size_t \fP\fIn\fP\fB);\fP
.fi
.SH OPIS
The main case for this function is when \fIs\fP is not NULL and \fIpwc\fP is not
NULL.  In this case, the \fBmbtowc\fP()  function inspects at most \fIn\fP bytes
of the multibyte string starting at \fIs\fP, extracts the next complete
multibyte character, converts it to a wide character and stores it at
\fI*pwc\fP.  It updates an internal shift state known only to the \fBmbtowc\fP()
function.  If \fIs\fP does not point to a null byte (\[aq]\e0\[aq]), it returns
the number of bytes that were consumed from \fIs\fP, otherwise it returns 0.
.PP
Jeśli \fIn\fP bajtów, zaczynając od \fIs\fP, nie zawiera pełnego znaku
wielobajtowego lub jeśli zawierają niepoprawny ciąg wielobajtowy,
\fBmbtowc\fP() zwraca \fI\-1\fP. Może się to zdarzyć, nawet gdy \fIn\fP >=
\fIMB_CUR_MAX\fP, jeśli wielobajtowy łańcuch zawiera nadmiarowe ciągi
przesunięć.
.PP
Inna sytuacja ma miejsce, gdy \fIs\fP jest różne od NULL, ale \fIpwc\fP jest równe
NULL. Wówczas funkcja \fBmbtowc\fP() zachowuje się jak powyżej, z tym
wyjątkiem, że nie przechowuje przetworzonego znaku szerokiego w pamięci.
.PP
.\" The Dinkumware doc and the Single UNIX specification say this, but
.\" glibc doesn't implement this.
Trzecia sytuacja występuje, gdy \fIs\fP jest równe NULL. Wówczas \fIpwc\fP i \fIn\fP
są ignorowane. Funkcja \fBmbtowc\fP() sprowadza stan przesunięty, znany tylko
tej funkcji, do stanu wyjściowego i zwraca wartość różną od zera, gdy
kodowanie zawiera nietrywialne stany przesunięte, lub zero, jeśli kodowanie
jest bezstanowe.
.SH "WARTOŚĆ ZWRACANA"
Jeśli \fIs\fP jest różne od NULL, funkcja \fBmbtowc\fP() zwraca liczbę zużytych
bajtów, zaczynając od \fIs\fP; zwraca 0, jeśli \fIs\fP wskazuje na bajt null lub
\-1 w przypadku błędu.
.PP
Jeśli \fIs\fP jest równe NULL, funkcja \fBmbtowc\fP zwraca wartość różną od zera,
gdy kodowanie posiada nietrywialne stany przesunięte, a zero, gdy kodowanie
jest bezstanowe.
.SH ATRYBUTY
Informacje o pojęciach używanych w tym rozdziale można znaleźć w podręczniku
\fBattributes\fP(7).
.ad l
.nh
.TS
allbox;
lbx lb lb
l l l.
Interfejs	Atrybut	Wartość
T{
\fBmbtowc\fP()
T}	Bezpieczeństwo wątkowe	MT\-Unsafe race
.TE
.hy
.ad
.sp 1
.SH STANDARDY
POSIX.1\-2001, POSIX.1\-2008, C99.
.SH UWAGI
Zachowanie \fBmbtowc\fP() zależy od kategorii \fBLC_CTYPE\fP bieżących ustawień
regionalnych.
.PP
Funkcja ta nie jest przystosowana do wielowątkowości. Funkcja
\fBmbrtowc\fP(3)zapewnia lepszy interfejs przy tym samym działaniu.
.SH "ZOBACZ TAKŻE"
\fBMB_CUR_MAX\fP(3), \fBmblen\fP(3), \fBmbrtowc\fP(3), \fBmbstowcs\fP(3),
\fBwcstombs\fP(3), \fBwctomb\fP(3)
.PP
.SH TŁUMACZENIE
Autorami polskiego tłumaczenia niniejszej strony podręcznika są:
Andrzej Krzysztofowicz <ankry@green.mf.pg.gda.pl>,
Robert Luberda <robert@debian.org>
i
Michał Kułach <michal.kulach@gmail.com>
.
.PP
Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje o warunkach
licencji można uzyskać zapoznając się z
.UR https://www.gnu.org/licenses/gpl-3.0.html
GNU General Public License w wersji 3
.UE
lub nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI.
.PP
Błędy w tłumaczeniu strony podręcznika prosimy zgłaszać na adres listy
dyskusyjnej
.MT manpages-pl-list@lists.sourceforge.net
.ME .
