在visualc++中调试代码时,获取argc为零和argv为null

Get argc is zero and argv is null when debuging codes in Visual C++

本文关键字:argc null argv 获取 visualc++ 调试 代码      更新时间:2023-10-16

今天我遇到了一个很奇怪的问题。我为我的项目创建了四个配置,它们是

X86|Debug
X86|Release
X64|Debug
X64|Release

只有在X64|Release中,当我通过F10/F11开始调试我的代码时,我总是得到主函数的两个参数argc==0argv==NULL。因为在其他3个配置中,参数是OK的!我已经尝试创建新项目/解决方案几次了,但问题仍然存在。

我的IDE是visual studio 2012 in Win7/x64,请帮助我找到问题,谢谢!

调试器在骗你。

在发布版本中,Visual Studio经常丢弃太多关于应用于代码的优化的信息,因此变量监视窗口经常打印垃圾值。缓解这种情况的一个简单方法是使用/d2Zi+编译标志。只需将其添加为附加构建选项(项目属性-> c++ ->命令行->附加选项),您应该再次看到正确的值。