- WEOF might not be negative.\r
- mbstate_t objects are not intended to be inspected by programs.\r
\r
- Copyright (c) 2010 - 2011, Intel Corporation. All rights reserved.<BR>\r
+ Copyright (c) 2010 - 2014, Intel Corporation. All rights reserved.<BR>\r
This program and the accompanying materials are licensed and made available under\r
the terms and conditions of the BSD License that accompanies this distribution.\r
The full text of the license may be found at\r
@param[out] S A pointer to the array to receive the input string.\r
@param[in] Limit The maximum number of characters to put into Buff,\r
including the terminating null character.\r
- @param[in] Stream An input stream from which to obtain a character.\r
+ @param[in] Stream An input stream from which to obtain the string.\r
\r
@return The fgetws function returns S if successful. If end-of-file is\r
encountered and no characters have been read into the array, the\r
characters, including the terminating null wide character of the input wide string. Then,\r
they attempt to convert the subject sequence to an integer, and return the result.\r
\r
- @param[in] Nptr Pointer to the string to convert to a floating-point value.\r
+ @param[in] Nptr Pointer to the string to convert.\r
@param[in] EndPtr Optional pointer to an object in which to store a pointer\r
to the final wide string.\r
@param[in] Base Base, 0 to 36, of the value represented by the string\r
where internal is the mbstate_t object for the mbrlen function, except that\r
the expression designated by ps is evaluated only once.\r
\r
- @return The mbrlen function returns a value between zero and n,\r
- inclusive, (size_t)(-2), or (size_t)(-1).\r
+ @param[in] s Pointer to a multibyte character sequence.\r
+ @param[in] n Maximum number of bytes to examine.\r
+ @param[in] pS Pointer to the conversion state object.\r
+\r
+ @retval 0 The next n or fewer characters complete a NUL.\r
+ @retval 1..n The number of bytes that complete the multibyte character.\r
+ @retval -2 The next n bytes contribute to an incomplete (but potentially valid) multibyte character.\r
+ @retval -1 An encoding error occurred.\r
**/\r
-size_t mbrlen(const char * __restrict S, size_t n, mbstate_t * __restrict ps);\r
+size_t mbrlen(const char * __restrict S, size_t n, mbstate_t * __restrict pS);\r
\r
-/**\r
+/** Restartable Multibyte to Wide character conversion.\r
If S is a null pointer, the mbrtowc function is equivalent to the call:<BR>\r
@verbatim\r
mbrtowc(NULL, "", 1, ps)\r
**/\r
size_t wcrtomb(char * __restrict S, wchar_t wc, mbstate_t * __restrict ps);\r
\r
-/**\r
-The mbsrtowcs function converts a sequence of multibyte characters that begins in the\r
-conversion state described by the object pointed to by ps, from the array indirectly\r
-pointed to by src into a sequence of corresponding wide characters. If dst is not a null\r
-pointer, the converted characters are stored into the array pointed to by dst. Conversion\r
-continues up to and including a terminating null character, which is also stored.\r
-Conversion stops earlier in two cases: when a sequence of bytes is encountered that does\r
-not form a valid multibyte character, or (if dst is not a null pointer) when len wide\r
-characters have been stored into the array pointed to by dst. Each conversion takes\r
-place as if by a call to the mbrtowc function.\r
-\r
-If dst is not a null pointer, the pointer object pointed to by src is assigned either a null\r
-pointer (if conversion stopped due to reaching a terminating null character) or the address\r
-just past the last multibyte character converted (if any). If conversion stopped due to\r
-reaching a terminating null character and if dst is not a null pointer, the resulting state\r
-described is the initial conversion state.\r
+/** Convert a sequence of multibyte characters into a sequence of wide characters.\r
+ The mbsrtowcs function converts a sequence of multibyte characters that begins in the\r
+ conversion state described by the object pointed to by ps, from the array indirectly\r
+ pointed to by src into a sequence of corresponding wide characters. If dst is not a null\r
+ pointer, the converted characters are stored into the array pointed to by dst. Conversion\r
+ continues up to and including a terminating null character, which is also stored.\r
+ Conversion stops earlier in two cases: when a sequence of bytes is encountered that does\r
+ not form a valid multibyte character, or (if dst is not a null pointer) when len wide\r
+ characters have been stored into the array pointed to by dst. Each conversion takes\r
+ place as if by a call to the mbrtowc function.\r
+\r
+ If dst is not a null pointer, the pointer object pointed to by src is assigned either a null\r
+ pointer (if conversion stopped due to reaching a terminating null character) or the address\r
+ just past the last multibyte character converted (if any). If conversion stopped due to\r
+ reaching a terminating null character and if dst is not a null pointer, the resulting state\r
+ described is the initial conversion state.\r
+\r
+ @param[in] dst Destination for the Wide character sequence.\r
+ @param[in] src Pointer to Pointer to MBCS char. sequence to convert.\r
+ @param[in] len Length of dest, in WIDE characters.\r
+ @param[in] ps Pointer to the conversion state object to be used for this conversion.\r
\r
@return If the input conversion encounters a sequence of bytes that do\r
not form a valid multibyte character, an encoding error occurs:\r
terminating null wide character, the resulting state described is the\r
initial conversion state.\r
\r
+ @param[in] dst Destination for the MBCS sequence.\r
+ @param[in] src Pointer to Pointer to wide char. sequence to convert.\r
+ @param[in] len Length of dest, in bytes.\r
+ @param[in] ps Pointer to the conversion state object to be used for this conversion.\r
+\r
@return If conversion stops because a wide character is reached that\r
does not correspond to a valid multibyte character, an\r
encoding error occurs: the wcsrtombs function stores the\r