mirror of https://github.com/mkerrisk/man-pages
88 lines
2.9 KiB
Plaintext
88 lines
2.9 KiB
Plaintext
.\" Copyright (c) 2001-2003 The Open Group, All Rights Reserved
|
|
.TH "WCSTOMBS" P 2003 "IEEE/The Open Group" "POSIX Programmer's Manual"
|
|
.\" wcstombs
|
|
.SH NAME
|
|
wcstombs \- convert a wide-character string to a character string
|
|
.SH SYNOPSIS
|
|
.LP
|
|
\fB#include <stdlib.h>
|
|
.br
|
|
.sp
|
|
size_t wcstombs(char *restrict\fP \fIs\fP\fB, const wchar_t *restrict\fP
|
|
\fIpwcs\fP\fB,
|
|
.br
|
|
\ \ \ \ \ \ size_t\fP \fIn\fP\fB);
|
|
.br
|
|
\fP
|
|
.SH DESCRIPTION
|
|
.LP
|
|
The \fIwcstombs\fP() function shall convert the sequence of wide-character
|
|
codes that are in the array pointed to by
|
|
\fIpwcs\fP into a sequence of characters that begins in the initial
|
|
shift state and store these characters into the array pointed
|
|
to by \fIs\fP, stopping if a character would exceed the limit of \fIn\fP
|
|
total bytes or if a null byte is stored. Each
|
|
wide-character code shall be converted as if by a call to \fIwctomb\fP(),
|
|
except that the
|
|
shift state of \fIwctomb\fP() shall not be affected.
|
|
.LP
|
|
The behavior of this function shall be affected by the \fILC_CTYPE\fP
|
|
category of the current locale.
|
|
.LP
|
|
No more than \fIn\fP bytes shall be modified in the array pointed
|
|
to by \fIs\fP. If copying takes place between objects that
|
|
overlap, the behavior is undefined. \ If \fIs\fP is a null pointer,
|
|
\fIwcstombs\fP() shall return the length required to convert
|
|
the entire array regardless of the value of \fIn\fP, but no values
|
|
are stored.
|
|
.LP
|
|
The \fIwcstombs\fP() function need not be reentrant. A function that
|
|
is not required to be reentrant is not required to be
|
|
thread-safe.
|
|
.SH RETURN VALUE
|
|
.LP
|
|
If a wide-character code is encountered that does not correspond to
|
|
a valid character (of one or more bytes each),
|
|
\fIwcstombs\fP() shall return (\fBsize_t\fP)-1. Otherwise, \fIwcstombs\fP()
|
|
shall return the number of bytes stored in the
|
|
character array, not including any terminating null byte. The array
|
|
shall not be null-terminated if the value returned is
|
|
\fIn\fP.
|
|
.SH ERRORS
|
|
.LP
|
|
The \fIwcstombs\fP() function may fail if:
|
|
.TP 7
|
|
.B EILSEQ
|
|
A
|
|
wide-character code does not correspond to a valid character.
|
|
.sp
|
|
.LP
|
|
\fIThe following sections are informative.\fP
|
|
.SH EXAMPLES
|
|
.LP
|
|
None.
|
|
.SH APPLICATION USAGE
|
|
.LP
|
|
None.
|
|
.SH RATIONALE
|
|
.LP
|
|
None.
|
|
.SH FUTURE DIRECTIONS
|
|
.LP
|
|
None.
|
|
.SH SEE ALSO
|
|
.LP
|
|
\fImblen\fP() , \fImbtowc\fP() , \fImbstowcs\fP() , \fIwctomb\fP()
|
|
, the Base Definitions volume of
|
|
IEEE\ Std\ 1003.1-2001, \fI<stdlib.h>\fP
|
|
.SH COPYRIGHT
|
|
Portions of this text are reprinted and reproduced in electronic form
|
|
from IEEE Std 1003.1, 2003 Edition, Standard for Information Technology
|
|
-- Portable Operating System Interface (POSIX), The Open Group Base
|
|
Specifications Issue 6, Copyright (C) 2001-2003 by the Institute of
|
|
Electrical and Electronics Engineers, Inc and The Open Group. In the
|
|
event of any discrepancy between this version and the original IEEE and
|
|
The Open Group Standard, the original IEEE and The Open Group Standard
|
|
is the referee document. The original Standard can be obtained online at
|
|
http://www.opengroup.org/unix/online.html .
|