//在Windows程序中打开控制台的程序
#include <stdio.h>
#include <io.h>
#include <fcntl.h>
BOOL CreateConsole(void)
{
FreeConsole();
if ( AllocConsole() )
{
int hCrt = _open_osfhandle((long)
GetStdHandle(STD_OUTPUT_HANDLE), _O_TEXT);
*stdout = *(::_fdopen(hCrt, "w"));
::setvbuf(stdout, NULL, _IONBF, 0);
*stderr = *(::_fdopen(hCrt, "w"));
::setvbuf(stderr, NULL, _IONBF, 0);
return TRUE;
}return FALSE;
}
在程序启动时调用该函数即可
博客给出了在Windows程序中打开控制台的程序代码。通过定义CreateConsole函数,先释放现有控制台,再分配新控制台,设置标准输出和错误输出,最后在程序启动时调用该函数即可实现打开控制台。
1937

被折叠的 条评论
为什么被折叠?



