wcstombs.3 (3f0a01ea877600bd378547dba71961fca1482f69) wcstombs.3 (8b8109275c1a583e96171df08e3136151c02279e)
1.\" Copyright (c) 2002, 2003 Tim J. Robbins. All rights reserved.
1.\" Copyright (c) 2002-2004 Tim J. Robbins. All rights reserved.
2.\" Copyright (c) 1993
3.\" The Regents of the University of California. All rights reserved.
4.\"
5.\" This code is derived from software contributed to Berkeley by
6.\" Donn Seeley of BSDI.
7.\"
8.\" Redistribution and use in source and binary forms, with or without
9.\" modification, are permitted provided that the following conditions

--- 22 unchanged lines hidden (view full) ---

32.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
33.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
34.\" SUCH DAMAGE.
35.\"
36.\" From @(#)multibyte.3 8.1 (Berkeley) 6/4/93
37.\" From FreeBSD: src/lib/libc/locale/multibyte.3,v 1.22 2003/11/08 03:23:11 tjr Exp
38.\" $FreeBSD$
39.\"
2.\" Copyright (c) 1993
3.\" The Regents of the University of California. All rights reserved.
4.\"
5.\" This code is derived from software contributed to Berkeley by
6.\" Donn Seeley of BSDI.
7.\"
8.\" Redistribution and use in source and binary forms, with or without
9.\" modification, are permitted provided that the following conditions

--- 22 unchanged lines hidden (view full) ---

32.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
33.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
34.\" SUCH DAMAGE.
35.\"
36.\" From @(#)multibyte.3 8.1 (Berkeley) 6/4/93
37.\" From FreeBSD: src/lib/libc/locale/multibyte.3,v 1.22 2003/11/08 03:23:11 tjr Exp
38.\" $FreeBSD$
39.\"
40.Dd November 19, 2003
40.Dd April 8, 2004
41.Dt WCSTOMBS 3
42.Os
43.Sh NAME
44.Nm wcstombs ,
45.Nd convert a wide-character string to a character string
46.Sh LIBRARY
47.Lb libc
48.Sh SYNOPSIS
49.In stdlib.h
50.Ft size_t
51.Fn wcstombs "char * restrict mbstring" "const wchar_t * restrict wcstring" "size_t nbytes"
52.Sh DESCRIPTION
53The
54.Fn wcstombs
55function converts a wide character string
56.Fa wcstring
41.Dt WCSTOMBS 3
42.Os
43.Sh NAME
44.Nm wcstombs ,
45.Nd convert a wide-character string to a character string
46.Sh LIBRARY
47.Lb libc
48.Sh SYNOPSIS
49.In stdlib.h
50.Ft size_t
51.Fn wcstombs "char * restrict mbstring" "const wchar_t * restrict wcstring" "size_t nbytes"
52.Sh DESCRIPTION
53The
54.Fn wcstombs
55function converts a wide character string
56.Fa wcstring
57into a multibyte character string
58.Fa mbstring .
57into a multibyte character string,
58.Fa mbstring ,
59beginning in the initial conversion state.
59Up to
60.Fa nbytes
61bytes are stored in
62.Fa mbstring .
63Partial multibyte characters at the end of the string are not stored.
64The multibyte character string is null terminated if there is room.
65.Sh RETURN VALUES
66The
67.Fn wcstombs
68function returns the number of bytes converted
69(not including any terminating null), if successful, otherwise it returns
70.Po Vt size_t Pc Ns \-1 .
71.Sh ERRORS
72The
73.Fn wcstombs
74function will fail if:
75.Bl -tag -width Er
60Up to
61.Fa nbytes
62bytes are stored in
63.Fa mbstring .
64Partial multibyte characters at the end of the string are not stored.
65The multibyte character string is null terminated if there is room.
66.Sh RETURN VALUES
67The
68.Fn wcstombs
69function returns the number of bytes converted
70(not including any terminating null), if successful, otherwise it returns
71.Po Vt size_t Pc Ns \-1 .
72.Sh ERRORS
73The
74.Fn wcstombs
75function will fail if:
76.Bl -tag -width Er
76.\".It Bq Er EINVAL
77.\"Invalid argument.
78.It Bq Er EILSEQ
79An invalid wide character was encountered.
77.It Bq Er EILSEQ
78An invalid wide character was encountered.
79.It Bq Er EINVAL
80The conversion state is invalid.
80.El
81.Sh SEE ALSO
82.Xr mbstowcs 3 ,
81.El
82.Sh SEE ALSO
83.Xr mbstowcs 3 ,
84.Xr multibyte 3 ,
83.Xr wcsrtombs 3 ,
84.Xr wctomb 3
85.Sh STANDARDS
86The
87.Fn wcstombs
88function conforms to
85.Xr wcsrtombs 3 ,
86.Xr wctomb 3
87.Sh STANDARDS
88The
89.Fn wcstombs
90function conforms to
89.St -isoC .
90.Sh BUGS
91The current implementation does not support shift states.
91.St -isoC-99 .