SysTutorials

Man Pages › Section 3

mbsrtowcs(3)

NAME

mbsrtowcs – convert a multibyte string to a wide-character string

SYNOPSIS


#include <wchar.h>
size_t mbsrtowcs(wchar_t *dest, const char **src,
                 size_t len, mbstate_t *ps);

DESCRIPTION

If dest is not NULL, the mbsrtowcs() function converts the multibyte string *src to a wide-character string starting at dest. At most len wide characters are written to dest. The shift state *ps is updated. The conversion is effectively performed by repeatedly calling mbrtowc(dest, *src, n, ps) where n is some positive number, as long as this call succeeds, and then incrementing dest by one and *src by the number of bytes consumed. The conversion can stop for three reasons:

1.

An invalid multibyte sequence has been encountered. In this case, *src is left pointing to the invalid multibyte sequence, (size_t) -1 is returned, and errno is set to EILSEQ.

2.

len non-L’