voidSetStdOutToNewConsole(){int hConHandle;long lStdHandle;FILE*fp;// allocate a console for this appAllocConsole();// redirect unbuffered STDOUT to the console
lStdHandle =(long)GetStdHandle(STD_OUTPUT_HANDLE);
hConHandle = _open_osfhandle(lStdHandle, _O_TEXT);
fp = _fdopen( hConHandle,"w");*stdout =*fp;
setvbuf( stdout, NULL, _IONBF,0);}
voidSetStdOutToNewConsole(){// allocate a console for this appAllocConsole();// redirect unbuffered STDOUT to the console
HANDLE consoleHandle =GetStdHandle(STD_OUTPUT_HANDLE);int fileDescriptor = _open_osfhandle((intptr_t)consoleHandle, _O_TEXT);FILE*fp = _fdopen( fileDescriptor,"w");*stdout =*fp;
setvbuf( stdout, NULL, _IONBF,0);// give the console window a nicer titleSetConsoleTitle(L"Debug Output");// give the console window a bigger buffer size
CONSOLE_SCREEN_BUFFER_INFO csbi;if(GetConsoleScreenBufferInfo(consoleHandle,&csbi)){
COORD bufferSize;
bufferSize.X = csbi.dwSize.X;
bufferSize.Y =9999;SetConsoleScreenBufferSize(consoleHandle, bufferSize);}}