diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-06-17 10:51:52 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-06-17 10:51:52 +0000 |
commit | 4ad94864781f48b1a4b77f9cfb934622bf756ba1 (patch) | |
tree | 3900955c1886e6d2570fea7125ee1f01bafe876d /upstream/debian-unstable/man3/mbsinit.3 | |
parent | Adding upstream version 4.22.0. (diff) | |
download | manpages-l10n-4ad94864781f48b1a4b77f9cfb934622bf756ba1.tar.xz manpages-l10n-4ad94864781f48b1a4b77f9cfb934622bf756ba1.zip |
Adding upstream version 4.23.0.upstream/4.23.0
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'upstream/debian-unstable/man3/mbsinit.3')
-rw-r--r-- | upstream/debian-unstable/man3/mbsinit.3 | 61 |
1 files changed, 8 insertions, 53 deletions
diff --git a/upstream/debian-unstable/man3/mbsinit.3 b/upstream/debian-unstable/man3/mbsinit.3 index 41a43a44..487b02d7 100644 --- a/upstream/debian-unstable/man3/mbsinit.3 +++ b/upstream/debian-unstable/man3/mbsinit.3 @@ -1,5 +1,6 @@ '\" t -.\" Copyright (c) Bruno Haible <haible@clisp.cons.org> +.\" Copyright, Bruno Haible <haible@clisp.cons.org> +.\" Copyright 2024, Alejandro Colomar <alx@kernel.org> .\" .\" SPDX-License-Identifier: GPL-2.0-or-later .\" @@ -9,67 +10,21 @@ .\" OpenGroup's Single UNIX specification http://www.UNIX-systems.org/online.html .\" ISO/IEC 9899:1999 .\" -.TH mbsinit 3 2023-07-20 "Linux man-pages 6.05.01" +.TH mbsinit 3 2024-05-03 "Linux man-pages 6.8" .SH NAME -mbsinit \- test for initial shift state +mbsinit +\- +test for initial shift state .SH LIBRARY Standard C library .RI ( libc ", " \-lc ) .SH SYNOPSIS .nf .B #include <wchar.h> -.PP +.P .BI "int mbsinit(const mbstate_t *" ps ); .fi .SH DESCRIPTION -Character conversion between the multibyte representation and the wide -character representation uses conversion state, of type -.IR mbstate_t . -Conversion of a string uses a finite-state machine; when it is interrupted -after the complete conversion of a number of characters, it may need to -save a state for processing the remaining characters. -Such a conversion -state is needed for the sake of encodings such as ISO-2022 and UTF-7. -.PP -The initial state is the state at the beginning of conversion of a string. -There are two kinds of state: the one used by multibyte to wide character -conversion functions, such as -.BR mbsrtowcs (3), -and the one used by wide -character to multibyte conversion functions, such as -.BR wcsrtombs (3), -but they both fit in a -.IR mbstate_t , -and they both have the same -representation for an initial state. -.PP -For 8-bit encodings, all states are equivalent to the initial state. -For multibyte encodings like UTF-8, EUC-*, BIG5, or SJIS, the wide character -to multibyte conversion functions never produce non-initial states, but the -multibyte to wide-character conversion functions like -.BR mbrtowc (3) -do -produce non-initial states when interrupted in the middle of a character. -.PP -One possible way to create an -.I mbstate_t -in initial state is to set it to zero: -.PP -.in +4n -.EX -mbstate_t state; -memset(&state, 0, sizeof(state)); -.EE -.in -.PP -On Linux, the following works as well, but might generate compiler warnings: -.PP -.in +4n -.EX -mbstate_t state = { 0 }; -.EE -.in -.PP The function .BR mbsinit () tests whether @@ -98,7 +53,6 @@ T{ .BR mbsinit () T} Thread safety MT-Safe .TE -.sp 1 .SH STANDARDS C11, POSIX.1-2008. .SH HISTORY @@ -111,6 +65,7 @@ depends on the category of the current locale. .SH SEE ALSO +.BR mbstate_t (3type), .BR mbrlen (3), .BR mbrtowc (3), .BR mbsrtowcs (3), |