L
Nach <AllocConsole();> funktionieren (jedenfalls bei mir) cout und ein paar andere Dinge nicht mehr, was ich mit folgendem Code behoben hab (das ist ehrlich gesagt woanders abgeschrieben - siehe http://dslweb.nwnexus.com/~ast/dload/guicon.htm - und verkürzt):
if(AllocConsole()){
hConsoleOutput=GetStdHandle(STD_OUTPUT_HANDLE);
*stdout = *_fdopen( _open_osfhandle((int)hConsoleOutput, 0), "w" );
setvbuf( stdout, NULL, _IONBF, 0 );
*stdin = *_fdopen( _open_osfhandle((long)GetStdHandle(STD_INPUT_HANDLE), 0), "r" );
setvbuf( stdin, NULL, _IONBF, 0 );
*stderr = *_fdopen( _open_osfhandle((long)GetStdHandle(STD_ERROR_HANDLE), 0), "w" );
setvbuf( stderr, NULL, _IONBF, 0 );
// make cout, wcout, cin, wcin, wcerr, cerr, wclog and clog
// point to console as well
std::ios::sync_with_stdio();
SetConsoleMode(GetStdHandle(STD_INPUT_HANDLE),0);
}else{
//usw wenn entweder Fehler aufgetreten oder es eben schon eine Konsole gab;
//denn <AllocConsole> erzeugt keine zweite, dafür brauchts attach~