libwchar2 0.0.10
mbstowcs manual

mbstowcs - convert a multibyte string to a wide-character string

If dest is not NULL, the mbstowcs() function converts the multibyte string src to a wide-character string starting at dest.
At most n wide characters are written to dest.
The sequence of characters in the string src shall begin in the initial shift state.
The conversion can stop for three reasons:

The programmer must ensure that there is room for at least n wide characters at dest.

If dest is NULL, n is ignored, and the conversion proceeds as above, except that the converted wide characters are not written out to memory, and that no length limit exists.

In order to avoid the case 2 above, the programmer should make sure n is greater than or equal to:

... = mbstowcs(NULL,src,0) + 1;

Return Value

The mbstowcs() function returns the number of wide characters that make up the converted part of the wide-character string, not including the terminating null wide character.
If an invalid multibyte sequence was encountered, (size_t) -1 is returned.

Notes

The behavior of mbstowcs() depends on the LC_CTYPE category of the current locale.
The function mbstowcs() provides a better interface to the same functionality.

See example

See also
https://github.com/ClnViewer/LibWchar2/blob/master/test/test_mbstowcs.c

LibWchar2 information
Version
libwchar2 0.0.10
Date
Wed Aug 22 2018
Author
(c) PS 2018-2018
Manual author and license