1

抱歉这么一个菜鸟问题,我以前从来没有遇到过这个,我在网上查了一下,但只能找到关于 argc 和 argv 的描述。

无论如何,我在visual studio 2012中启动了一个新的win32控制台项目。我点击空项目,并开始添加program.cpp,其内容如下:

#include <iostream>
#include <Windows.h>

int main(int argc, char** argv)
{
    printf( "%d", argc );
    getchar();
    return 0;
}

我打算使用参数来制作程序,这就是为什么我需要 argc 才能正常工作。关于输出大量数字的代码,例如“21374903”。在属性-> 链接器-> 高级中,我将入口点设置为'main'。

有什么我做错了吗?我可以添加设置以使其正常工作吗?

4

1 回答 1

7

在属性 -> 链接器 -> 高级中,我将入口点设置为“ main”。

不要那样做。入口点需要是 C 运行时 (CRT) 入口点,它执行 C 初始化,从操作系统获取参数,并main使用它们调用您的函数。

如果您没有明确告诉链接器入口点的名称,它将自动选择正确的入口点。调用的 CRT 入口点main被命名mainCRTStartup(还有其他名称的 CRT 入口点调用 Visual C++ 支持的其他类型的主要函数)。

于 2013-07-10T01:59:46.837 回答