После выполнения pw1 и pw2 увеличиваются на sizeof (WCHAR)
Почему так?
По идее, сначала в цикле вынимается содержимое *pw2, но оно уже равно нулю, делее продолжения быть не должно,
но все-таки строки копируются с завершающим нулем из *pw2
??
Или так:
while (*pw2++);
pw2 увеличивается на sizeof (WCHAR); хотя там нуль сразу в первой ячейке.