size_t wcsftime(wchar_t *wcs, size_t maxsize, const char *format, const struct tm *timptr);
size_t wcsftime(wchar_t *restrict wcs, size_t maxsize, const wchar_t *restrict format, const struct tm *restrict timptr);
The wcsftime() function is equivalent to the strftime(3C) function, except that:
The argument wcs points to the initial element of an array of wide-characters into which the generated output is to be placed.
The argument maxsize indicates the maximum number of wide-characters to be placed in the output array.
The argument format is a wide-character string and the conversion specifications are replaced by corresponding sequences of wide-characters.
The return value indicates the number of wide-characters placed in the output array.
If copying takes place between objects that overlap, the behavior is undefined.
If the total number of resulting wide character codes (including the terminating null wide-character code) is no more than maxsize, wcsftime() returns the number of wide-character codes placed into the array pointed to by wcs, not including the terminating null wide-character code. Otherwise, 0 is returned and the contents of the array are indeterminate.
The wcfstime() function uses malloc(3C) and should malloc() fail, errno will be set by malloc ().
See attributes(5) for descriptions of the following attributes:
The wcsftime() function can be used safely in multithreaded applications, as long as setlocale(3C) is not being called to change the locale.