拥有以下代码:
int main(int argc, char* argv[]) {
// program code
std::cout << std::endl << "Press <ENTER> to exit..." << std::endl;
std::getchar();
return 0;
}
当我从Visual Studio启动此程序时,它写道:
"Press <ENTER> to exit..."
等待按下ENTER键,而不是写入Visual Studio标准:
"Press any key to continue..."
因此,从Visual Studio(Ctrl + F5)我需要按两次按钮,但只需要一个按钮。
如何解决此问题(某些代码检测从Visual Studio启动并允许“注释”我的“按键等待代码”)?
由于
答案 0 :(得分:4)
您可以设置项目设置,以便Visual Studio在每次启动时将命令行参数传递给您的程序。因此,只需创建一个命令行参数,告诉它不要在退出时暂停,并设置Visual Studio来传递该参数。
如果您之前从未使用过命令行参数,则会在argc
中的argv
/ main
中显示。
答案 1 :(得分:3)
只需摆脱“按Enter键退出”代码并退出。这是一个毫无意义的事情,使得在脚本中使用程序或过滤器变得更加困难。你永远不会养成那种坏习惯,然后开发它并且必须打破它,这样会好得多。
答案 2 :(得分:1)
我可以想到几种方法来做到这一点。一种方法是让Visual Studio在调试器中启动它时将命令行标志传递给程序(Project Properties-&gt; Debug-&gt; Command Line Arguments)。
另一个技巧是探测是否附加了调试器。那里有good sample code at Code Project。