在visualc++中调试代码时,获取argc为零和argv为null
Get argc is zero and argv is null when debuging codes in Visual C++
今天我遇到了一个很奇怪的问题。我为我的项目创建了四个配置,它们是
X86|Debug
X86|Release
X64|Debug
X64|Release
只有在X64|Release
中,当我通过F10/F11
开始调试我的代码时,我总是得到主函数的两个参数argc==0
和argv==NULL
。因为在其他3个配置中,参数是OK的!我已经尝试创建新项目/解决方案几次了,但问题仍然存在。
我的IDE是visual studio 2012 in Win7/x64,请帮助我找到问题,谢谢!
调试器在骗你。
在发布版本中,Visual Studio经常丢弃太多关于应用于代码的优化的信息,因此变量监视窗口经常打印垃圾值。缓解这种情况的一个简单方法是使用/d2Zi+
编译标志。只需将其添加为附加构建选项(项目属性-> c++ ->命令行->附加选项),您应该再次看到正确的值。
相关文章:
- 如果我std::dynamic_pointer_cast并且底层dynamic_cast的结果为null,那么返回的sh
- 如何在 c++ 中'NULL'字符串
- c++使用foreach使数组为null
- 当使用通配符和null指针调用函数时,对输出的说明
- 当字段可以为null时,如何使用C++接口在Avro中写入数据
- 如何在映射中返回null
- 为什么返回 NULL 不会破坏函数?
- 构造函数中的 QQuickItem 父项 null
- 检查字符串是否"null" C++
- fopen 在 gdb 中返回 NULL
- what(): basic_string::_M_construct null not valid
- 在这个函数中是有缺陷的,因为取消引用 null 是无效的,所以我想更改代码
- 为什么在排序链表上的这种合并实现总是将两个列表都设置为 NULL,而只有一个应该设置一个列表?
- 为什么要从main()返回NULL?
- 为什么 nlohmann/json 序列化 "null" 而不是在 double 上"0"?
- 当目标指针不是基类的类型时,为什么允许dynamic_cast为多态类生成 null 指针?
- 是否有通用方法可以找到任何以 null 结尾的字符串的长度?
- 为什么TinyXML2的XMLDocument::FirstChild()函数在尝试解析这个有效的XML文件时返回NULL?
- 为什么我们需要argc,而argv的末尾总是有一个null
- 在visualc++中调试代码时,获取argc为零和argv为null