WCRTOMBSection: Linux Programmer's Manual (3)Updated: 1999-07-25 |
WCRTOMBSection: Linux Programmer's Manual (3)Updated: 1999-07-25 |
#include <wchar.h> size_t wcrtomb(char *s, wchar_t wc, mbstate_t *ps);
A different case is when s is not NULL but wc is L'\0'. In this case the wcrtomb function stores at the character array pointed to by s the shift sequence needed to bring *ps back to the initial state, followed by a '\0' byte. It updates the shift state *ps (i.e. brings it into the initial state), and returns the length of the shift sequence plus one, i.e. the number of bytes written at s.
A third case is when s is NULL. In this case wc is ignored, and the function effectively returns wcrtomb(buf,L'\0',ps) where buf is an internal anonymous buffer.
In all of the above cases, if ps is a NULL pointer, a static anonymous state only known to the wcrtomb function is used instead.
Passing NULL as ps is not multi-thread safe.