Original Post
MultiByteToWideChar() is giving me strange results. When I pass a string with the pound character in £, the pound symbol is removed : strcpy(szStr, "a£a"); MultiByteToWideChar(CP_UTF8, 0, szStr, (int) (strlen(szStr)+1), wsz, sizeof(wsz)/sizeof(wsz[0]) ); After this wsz contains "aa". Why?