我正在Visual Studio中开发一个c++命令行应用程序,需要用命令行参数调试它。目前,我只是运行生成的EXE文件与我需要的参数(像这个program.exe -file.txt),但这样我不能调试。我是否可以在某个地方指定调试参数?
当前回答
这可能会帮助一些仍然有问题的人。 我使用Visual Studio 2015,当我改变argv的定义时,我只能传递参数。
而不是
int main(int argc, char **argv){
}
我必须使用
int main(int argc, char *argv[]){
}
我不知道为什么这是必要的,但它确实有效。
其他回答
在Visual Studio 2010中,右键单击项目,选择属性,单击左侧窗格中的配置属性部分,然后单击调试,然后在右侧窗格中有一个命令参数框。
在其中输入命令行参数。你可以出发了。现在调试并查看结果。如果你厌倦了改变属性,那么暂时直接在程序中输入。
Mozilla.org关于在Windows上调试Mozilla的常见问题解答在这里很有趣。
简而言之,Visual Studio调试器可以从命令行在程序上调用,允许在调用命令行程序时直接在命令行上指定命令行参数。
对于Visual Studio 8或Visual Studio 9(分别是Visual Studio 2005或Visual Studio 2008),这看起来如下所示
devenv /debugexe 'program name' 'program arguments'
也可以在Visual Studio调试器中使用资源管理器操作来启动程序。
对于那些使用VS2022并且你没有launchSchema的人。正如上面有人提到的,有一个使用launchSettings.json插入参数的解决方案。
输入文件并使用"commandLineArgs": "argument here"插入参数,
这对我很管用。
这可能会帮助一些仍然有问题的人。 我使用Visual Studio 2015,当我改变argv的定义时,我只能传递参数。
而不是
int main(int argc, char **argv){
}
我必须使用
int main(int argc, char *argv[]){
}
我不知道为什么这是必要的,但它确实有效。
在Visual Studio 2022中,指定“命令行参数”的选项已移动到“启动配置文件UI”(截图如下)。
您可以从右键单击项目>属性>调试>“打开调试启动配置文件UI”>命令行参数
请注意,该功能目前正在收到来自用户的负面反馈。参考下图:
调试启动配置文件UI需要太多的点击才能到达 启动配置文件UI设置环境变量不可用
推荐文章
- 如何为构造函数定制Visual Studio的私有字段生成快捷方式?
- 为什么Visual Studio 2015/2017/2019测试运行器没有发现我的xUnit v2测试
- 如何从终端/命令行调用VS代码编辑器
- decltype(auto)的一些用途是什么?
- Shared_ptr转换为数组:应该使用它吗?
- Printf与std::字符串?
- 在Jar文件中运行类
- 禁用复制构造函数
- Visual Studio复制项目
- 只接受特定类型的c++模板
- c#和Java中的泛型有什么不同?和模板在c++ ?
- 如何在Windows命令提示符下运行.sh ?
- 如何在iis7应用程序池中设置。net Framework 4.5版本
- 如何为KnockoutJS调试模板绑定错误?
- c++ 11中的递归lambda函数