: If s
is a null pointer,
equivalent to mbrtoc8(nullptr, "", 1, ps).
Otherwise, the function inspects at most n
beginning with the byte pointed to by s
to determine the number of bytes needed to complete
the next multibyte character (including any shift sequences).
If the function determines
that the next multibyte character is complete and valid,
it determines the values of the corresponding UTF-8 code units and then,
is not a null pointer,
stores the value of the first (or only) such code unit
in the object pointed to by pc8.
Subsequent calls will store successive UTF-8 code units
without consuming any additional input
until all the code units have been stored.
If the corresponding Unicode character is U+0000,
the resulting state described is the initial conversion state.