[out] | pStringW | is an optional buffer capable to store cchStringW wide UCS-2 (or UCS-4 if objects of the wchar_t type are able to store UCS-4 characters) characters of the converted wide string. If the pointer is NULL, cchStringW specifies a number of wide characters that, at most, are required by the caller. Anyway the function returns a number of wide characters that would have been produced if a valid pStringW buffer of cchStringW character size have been passed to the function with the same values of other parameters. The resulting string is not zero-terminated. |
[in] | cchStringW | specifies a capacity of the output buffer or, if the pStringW is NULL, a number of wide characters would have been written to the output as a result of the conversion. |
[in] | pStringMB | specifies an input UTF-8 multibyte string. The length of the string is specified by cbStringMB in bytes or, if cbStringMB is (size_t) -1 by the terminating zero character. Also if the terminating zero appears among the first cbStringMB bytes of the input string, it is ignored together with the rest characters. Thus if pStringMB is zero-terminated, a value of cbStringMB can be (size_t) -1; also if cbStringMB specifies an actual length of the converted string, the latter need not to be zero-terminated. |
[in] | cbStringMB | is a length, in bytes, of the multibyte string. If cbStringMB is (size_t) -1, the string must be zero-terminated. If the null terminator is found among cbStringMB bytes of the multibyte string, the rest part of the string is not taken into account as well as the terminator itself. |