在 VCL 应用程序中使用控制台
Using console in VCL applications
有没有办法在 VCL 应用程序中使用控制台进行输出? cout
实际上在 VCL 应用程序中将流定向到哪里?
我是这样做的:
void TForm1::Button1Click(TObject *Sender)
{
out_to_console("Some text\n");
}
void out_to_console(std::string str)
{
AllocConsole() ;
AttachConsole(GetCurrentProcessId()) ;
std::freopen("CON", "w", stdout) ;
std::cout<<str;
}
还有两个问题悬而未决:
- 为什么我需要转义序列
\n
才能在控制台上看到文本 Some text
?
stdout
在 VCL 应用程序中指向哪里?
有没有办法在 VCL 应用程序中使用控制台进行输出? cout
实际上在 VCL 应用程序中将流定向到哪里?
我是这样做的:
void TForm1::Button1Click(TObject *Sender)
{
out_to_console("Some text\n");
}
void out_to_console(std::string str)
{
AllocConsole() ;
AttachConsole(GetCurrentProcessId()) ;
std::freopen("CON", "w", stdout) ;
std::cout<<str;
}
还有两个问题悬而未决:
- 为什么我需要转义序列
\n
才能在控制台上看到文本Some text
? stdout
在 VCL 应用程序中指向哪里?