在调试模式下运行时VS2012中的命令参数错误

时间:2013-10-05 14:00:20

标签: c++ c debugging visual-studio-2012 arguments

在调试模式下,我在VS2012中继续从命令参数中获取错误的值。我通过Properties-> Configuration properties-> Debugging-> Command Arguments设置了正确的参数,但我仍然得到相同的错误输出。

代码在发布模式下工作,但不在调试模式下工作。

这是我的代码:

   int main(int argc, char **argv)
   {
        cout << argc << endl;
        return 0;
   }

输出为:2130567168

另外,我已经检查了argv应该指向的内存块,它与我传递的参数没有任何关系。

编辑:

由于医生的质疑,我已经解决了这个问题。显然,设置入口点会产生错误的值。我已经把它设置为“主”并删除它解决了问题。

任何人都可以解释为什么会这样吗?

1 个答案:

答案 0 :(得分:3)

关于编辑,C程序的入口点不是main,而是初始化C运行时的C运行时特定入口点,包括最终传递给main的参数。