A podle jakeho standardu ty funkce pro praci s terminalem ve Windows jsou?
... presne tak, zadneho. Panove z MS si je vycucali z prstu.
Kazdopadne konzolovy vystup z Qt je lepsi delat pres Qt, nez se spolehat na funkce OS, ktere jsou z pohledu Qt nestandardni vsechny. Konkretne k tomu slouzi trida QTextStream, ktere se da predat stdout/stderr/popisovac souboru/etc. Kodovani se nastavuje pres setCodec().
S Windows command line muzou byt problemy taky, protoze ve vychozim stavu neumi zobrazit unicode, ale jenom lokalni codepage (u nas napr. 1250). Je potreba si v ni nastavit font, ktery unicode zvladne (ne-obrazkovy).
Viz: http://stackoverflow.com/questions/1259084/what-encoding-code-page-is-cmd-exe-using
Dalsi problem je, ze kompilator musi umet precist a spravne ulozit retezce ze zdrojaku. Pokud jich pouzivate vice (treba MSVC a GCC), muzou vzniknout problemy s kodovanim. MS kompilator predpoklada, ze delate v pribalenem IDE a vse je bud v UTF16 nebo v lokalni mutaci MS kodovani. U prenositelne aplikace tedy jakekoliv retezce s narodnimi znaky rozhodne nepatri do zdrojaku. Ty je lespi umistit do nejakeho jineho souboru, kde presne vite co se deje s jeho obsahem. Ve zdrojaku nechte ciste ASCII. Dost to zjednodussi lokalizaci programu a nestane se Vam, ze nekdo posle patch s rozbitymi retezci/kodovanim, na kterych si nasledne nektery kompilator vylame zuby :)
Drobny Qt uvod: http://www.youtube.com/wat ch?v=lz9deRYwNFY
PS: proc me to nechce vzit slovo ,,wat ch'' vcelku?