mbrtowc.3 (58d38e25205c6ee5ef0796ffa2cd8e2ca6c6e7f3) | mbrtowc.3 (279062fae149e105dae7c28b638d49ba5715725d) |
---|---|
1.\" Copyright (c) 2002 Tim J. Robbins 2.\" All rights reserved. 3.\" 4.\" Redistribution and use in source and binary forms, with or without 5.\" modification, are permitted provided that the following conditions 6.\" are met: 7.\" 1. Redistributions of source code must retain the above copyright 8.\" notice, this list of conditions and the following disclaimer. --- 9 unchanged lines hidden (view full) --- 18.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 19.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 20.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 21.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 22.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 23.\" SUCH DAMAGE. 24.\" 25.\" $FreeBSD$ | 1.\" Copyright (c) 2002 Tim J. Robbins 2.\" All rights reserved. 3.\" 4.\" Redistribution and use in source and binary forms, with or without 5.\" modification, are permitted provided that the following conditions 6.\" are met: 7.\" 1. Redistributions of source code must retain the above copyright 8.\" notice, this list of conditions and the following disclaimer. --- 9 unchanged lines hidden (view full) --- 18.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 19.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 20.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 21.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 22.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 23.\" SUCH DAMAGE. 24.\" 25.\" $FreeBSD$ |
26.\" |
|
26.Dd August 15, 2002 27.Dt MBRTOWC 3 28.Os 29.Sh NAME 30.Nm mbrtowc 31.Nd "convert a character to a wide-character code (restartable)" 32.Sh LIBRARY 33.Lb libc 34.Sh SYNOPSIS 35.In wchar.h 36.Ft size_t | 27.Dd August 15, 2002 28.Dt MBRTOWC 3 29.Os 30.Sh NAME 31.Nm mbrtowc 32.Nd "convert a character to a wide-character code (restartable)" 33.Sh LIBRARY 34.Lb libc 35.Sh SYNOPSIS 36.In wchar.h 37.Ft size_t |
37.Fn mbrtowc "wchar_t * restrict pwc" "const char * restrict s" "size_t n" "mbstate_t * restrict ps" | 38.Fo mbrtowc 39.Fa "wchar_t * restrict pwc" "const char * restrict s" "size_t n" 40.Fa "mbstate_t * restrict ps" 41.Fc |
38.Sh DESCRIPTION 39The 40.Fn mbrtowc 41function inspects at most 42.Fa n 43bytes pointed to by 44.Fa s 45and interprets them as a multibyte character sequence 46according to the current setting of 47.Ev LC_CTYPE . 48If 49.Fa pwc 50is not 51.Dv NULL , 52the multibyte character which 53.Fa s 54represents is stored in the | 42.Sh DESCRIPTION 43The 44.Fn mbrtowc 45function inspects at most 46.Fa n 47bytes pointed to by 48.Fa s 49and interprets them as a multibyte character sequence 50according to the current setting of 51.Ev LC_CTYPE . 52If 53.Fa pwc 54is not 55.Dv NULL , 56the multibyte character which 57.Fa s 58represents is stored in the |
55.Ft wchar_t | 59.Vt wchar_t |
56it points to. 57.Pp 58If 59.Fa s 60is 61.Dv NULL , 62.Fn mbrtowc 63behaves as if 64.Fa pwc 65was 66.Dv NULL , 67.Fa s | 60it points to. 61.Pp 62If 63.Fa s 64is 65.Dv NULL , 66.Fn mbrtowc 67behaves as if 68.Fa pwc 69was 70.Dv NULL , 71.Fa s |
68was an empty string ("") | 72was an empty string 73.Pq Qq |
69and 70.Fa n 71was 1. 72.Pp 73The | 74and 75.Fa n 76was 1. 77.Pp 78The |
74.Ft mbstate_t | 79.Vt mbstate_t |
75argument, 76.Fa ps , 77is used to keep track of the shift state. 78If it is 79.Dv NULL , 80.Fn mbrtowc 81uses an internal, static | 80argument, 81.Fa ps , 82is used to keep track of the shift state. 83If it is 84.Dv NULL , 85.Fn mbrtowc 86uses an internal, static |
82.Ft mbstate_t | 87.Vt mbstate_t |
83object. 84.Sh RETURN VALUES 85The 86.Fn mbrtowc 87functions returns: 88.Bl -tag -width indent 89.It 0 90The first 91.Fa n 92or fewer bytes of 93.Fa s | 88object. 89.Sh RETURN VALUES 90The 91.Fn mbrtowc 92functions returns: 93.Bl -tag -width indent 94.It 0 95The first 96.Fa n 97or fewer bytes of 98.Fa s |
94represent the null wide character (L'\e0'). | 99represent the null wide character 100.Pq Li "L'\e0'" . |
95.It >0 96The first 97.Fa n 98or fewer bytes of 99.Fa s 100represent a valid character, 101.Fn mbrtowc 102returns the length (in bytes) of the multibyte sequence. | 101.It >0 102The first 103.Fa n 104or fewer bytes of 105.Fa s 106represent a valid character, 107.Fn mbrtowc 108returns the length (in bytes) of the multibyte sequence. |
103.It Xo 104.No ( Ns 105.Ft size_t Ns 106.No ) Ns \&-2 107.Xc | 109.It Po Vt size_t Pc Ns \-2 |
108The first 109.Fa n 110bytes of 111.Fa s 112are an incomplete multibyte sequence. | 110The first 111.Fa n 112bytes of 113.Fa s 114are an incomplete multibyte sequence. |
113.It Xo 114.No ( Ns 115.Ft size_t Ns 116.No ) Ns \&-1 117.Xc | 115.It Po Vt size_t Pc Ns \-1 |
118The byte sequence pointed to by 119.Fa s 120is an invalid multibyte sequence. 121.El 122.Sh ERRORS 123The 124.Fn mbrtowc 125function will fail if: --- 17 unchanged lines hidden --- | 116The byte sequence pointed to by 117.Fa s 118is an invalid multibyte sequence. 119.El 120.Sh ERRORS 121The 122.Fn mbrtowc 123function will fail if: --- 17 unchanged lines hidden --- |