mbrtowc man page on SunOS

Man page or keyword search:  
man Server   20652 pages
apropos Keyword Search (all sections)
Output format
SunOS logo
[printable version]

mbrtowc(3C)		 Standard C Library Functions		   mbrtowc(3C)

NAME
       mbrtowc - convert a character to a wide-character code (restartable)

SYNOPSIS
       #include <wchar.h>

       size_t mbrtowc(wchar_t *restrict pwc, const char *restrict s, size_t n,
       mbstate_t *restrict ps);

DESCRIPTION
       If s is a null pointer, the mbrtowc() function  is  equivalent  to  the
       call:

       mbrtowc(NULL, ``'', 1, ps)

       In this case, the values of the arguments pwc and n are ignored.

       If  s  is not a null pointer, the mbrtowc() function inspects at most n
       bytes beginning at the byte pointed to by  s to determine the number of
       bytes  needed  to  complete  the	 next	character (including any shift
       sequences).  If the function determines that the next character is com‐
       pleted, it determines the value of the corresponding wide-character and
       then, if pwc is not a null pointer, stores that	value  in  the	object
       pointed	to  by	pwc.  If  the corresponding wide-character is the null
       wide-character, the resulting state described is the initial conversion
       state.

       If  ps  is a null pointer, the mbrtowc() function uses its own internal
       mbstate_t object, which is initialized at program startup to  the  ini‐
       tial conversion state.	Otherwise, the	mbstate_t object pointed to by
       ps is used to completely describe the current conversion state  of  the
       associated  character  sequence.	 Solaris will behave as if no function
       defined in the Solaris Reference Manual calls mbrtowc().

       The behavior of this function is affected by the LC_CTYPE  category  of
       the current locale.  See environ(5).

RETURN VALUES
       The mbrtowc() function returns the first of the following that applies:

       0	       If  the	next  n	 or fewer bytes complete the character
		       that corresponds to the null wide-character  (which  is
		       the value stored).

       positive	       If the next n or fewer bytes complete a valid character
		       (which is the value stored); the value returned is  the
		       number of bytes that complete the character.

       (size_t)−2      If  the	next  n	 bytes contribute to an incomplete but
		       potentially valid  character, and all n bytes have been
		       processed  (no  value is stored).   When n has at least
		       the value of the MB_CUR_MAX macro, this case  can  only
		       occur  if   s  points  at a sequence of redundant shift
		       sequences  (for	implementations	 with  state-dependent
		       encodings).

       (size_t)−1      If  an  encoding error occurs, in which case the next n
		       or fewer bytes do not  contribute  to  a	 complete  and
		       valid   character  (no value is stored).	 In this case,
		       EILSEQ is stored in errno and the conversion  state  is
		       undefined.

ERRORS
       The mbrtowc() function may fail if:

       EINVAL	       The  ps	argument  points to an object that contains an
		       invalid conversion state.

       EILSEQ	       Invalid character sequence is detected.

ATTRIBUTES
       See attributes(5) for descriptions of the following attributes:

       ┌─────────────────────────────┬─────────────────────────────┐
       │      ATTRIBUTE TYPE	     │	    ATTRIBUTE VALUE	   │
       ├─────────────────────────────┼─────────────────────────────┤
       │Interface Stability	     │Standard			   │
       ├─────────────────────────────┼─────────────────────────────┤
       │MT-Level		     │See NOTES below		   │
       └─────────────────────────────┴─────────────────────────────┘

SEE ALSO
       mbsinit(3C), setlocale(3C), attributes(5), environ(5), standards(5)

NOTES
       If ps is not a  null  pointer,  mbrtowc()  uses	the  mbstate_t	object
       pointed	to  by ps and the function can be used safely in multithreaded
       applications, as long as setlocale(3C) is not being  called  to	change
       the  locale.  If	 ps  is	 a  null  pointer, mbrtowc() uses its internal
       mbstate_t object and the function is Unsafe in  multithreaded  applica‐
       tions.

SunOS 5.10			  1 Nov 2003			   mbrtowc(3C)
[top]

List of man pages available for SunOS

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net