Setting locale that is not supported by your system will result in some string operations returning a question mark "?" in your strings where it needs to perform transliteration.
1) Always check the return of setlocale() to ensure it has set to something supported
2) on Linux you can use the "locale -a" command to find a list of supported locales