#include wchar_t* wmemmove(wchar_t* d, const wchar_t* s, size_t n) { wchar_t* d0 = d; if ((size_t)(d - s) < n) while (n--) d[n] = s[n]; else while (n--) *d++ = *s++; return d0; }