#include <iostream>
#include <string>
#include <locale>
void func(const std::wstring& str)
{
for(size_t n = 0; n < str.size(); ++n)
std::wcout << str[n];
std::wcout << '\n';
}
int main()
{
std::locale::global(std::locale(""));
std::wcout.imbue(std::locale());
func(L"空手道");
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8c3RyaW5nPgojaW5jbHVkZSA8bG9jYWxlPgoKdm9pZCBmdW5jKGNvbnN0IHN0ZDo6d3N0cmluZyYgc3RyKQp7CiAgICBmb3Ioc2l6ZV90IG4gPSAwOyBuIDwgc3RyLnNpemUoKTsgKytuKQogICAgICAgIHN0ZDo6d2NvdXQgPDwgc3RyW25dOwogICAgc3RkOjp3Y291dCA8PCAnXG4nOwp9CgppbnQgbWFpbigpCnsKICAgIHN0ZDo6bG9jYWxlOjpnbG9iYWwoc3RkOjpsb2NhbGUoIiIpKTsKICAgIHN0ZDo6d2NvdXQuaW1idWUoc3RkOjpsb2NhbGUoKSk7CiAgICBmdW5jKEwi56m65omL6YGTIik7Cn0K