#include // https://stackoverflow.com/a/57241985 void CreateConsole() { if (!AllocConsole()) { // Add some error handling here. // You can call GetLastError() to get more info about the error. return; } // std::cout, std::clog, std::cerr, std::cin FILE* fDummy; freopen_s(&fDummy, "CONOUT$", "w", stdout); freopen_s(&fDummy, "CONOUT$", "w", stderr); freopen_s(&fDummy, "CONIN$", "r", stdin); //std::cout.clear(); //std::clog.clear(); //std::cerr.clear(); //std::cin.clear(); /*// std::wcout, std::wclog, std::wcerr, std::wcin HANDLE hConOut = CreateFile(_T("CONOUT$"), GENERIC_READ | GENERIC_WRITE, FILE_SHARE_READ | FILE_SHARE_WRITE, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL); HANDLE hConIn = CreateFile(_T("CONIN$"), GENERIC_READ | GENERIC_WRITE, FILE_SHARE_READ | FILE_SHARE_WRITE, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL); SetStdHandle(STD_OUTPUT_HANDLE, hConOut); SetStdHandle(STD_ERROR_HANDLE, hConOut); SetStdHandle(STD_INPUT_HANDLE, hConIn); std::wcout.clear(); std::wclog.clear(); std::wcerr.clear(); std::wcin.clear(); */ }