1

主要功能是这样的:

void main( int argc, char** argv ){
    // validate that an input was specified
    if( argc != 2 )
    {
        printUsage();
        return;
    }

    if( !strcmp(argv[1], "train") ) learn();
    else if( !strcmp(argv[1], "test") ) recognize();
    else
    {
        printf("Unknown command: %s\n", argv[1]);
        printUsage();
    }
}

当我执行程序时,控制台一出现就消失了。

非常感谢您的耐心和帮助!:)

4

4 回答 4

5

为什么我的控制台不等待 VS2010 和 Windows7 中的输入?

因为您没有指示它等待输入。

尝试system("pause");getchar()类似的东西。

于 2012-07-05T15:58:37.517 回答
2

该程序不使用用户输入,而是使用程序参数。

该程序需要 1 个输入参数,您可以通过以下方式设置:

  1. 打开cmd,将 directory( cd) 更改为 exe 文件所在的位置,然后使用参数运行程序。例如main.exe train
  2. 在 vs2010 上,转到项目属性,在“配置属性”下找到调试并将“命令参数”设置为您想要的参数。
于 2012-07-05T16:04:25.800 回答
0

您可以直接按“Ctrl+F5”,默认情况下会等待您按 Enter 以关闭控制台,而不是添加诸如“暂停”之类的代码getchar()或类似代码。请参阅此 SO 帖子:防止控制台窗口在 Visual Studio C/C++ 控制台应用程序上关闭

于 2012-07-05T16:23:52.127 回答
0

通过调试(按 F5)控制台应用程序,VS 不会在您的应用程序完成后自动调用“暂停”。您可以运行(按 CTRL+F5)该应用程序,VS 会为您调用“暂停”。

于 2012-07-06T17:24:26.837 回答