错误:'::main' 必须返回 'int'

新手上路,请多包涵

这是我的主要功能:

 void main(int argc, char **argv)
{
    if (argc >= 4)
    {
        ProcessScheduler *processScheduler;
        std::cout <<
            "Running algorithm: " << argv[2] <<
            "\nWith a CSP of: " << argv[3] <<
            "\nFilename: " << argv[1] <<
            std::endl << std::endl;

        if (argc == 4)
        {
            processScheduler = new ProcessScheduler(
                argv[2],
                atoi(argv[3])
            );
        }
        else
        {
            processScheduler = new ProcessScheduler(
                argv[2],
                atoi(argv[3]),
                atoi(argv[4]),
                atoi(argv[5])
            );
        }
        processScheduler -> LoadFile(argv[1]);
        processScheduler -> RunProcesses();

        GanntChart ganntChart(*processScheduler);
        ganntChart.DisplayChart();
        ganntChart.DisplayTable();
        ganntChart.DisplaySummary();

        system("pause");

        delete processScheduler;
    }
    else
    {
        PrintUsage();
    }
}

我编译时得到的错误是这样的:

Application.cpp:41:32:错误:’::main’ 必须返回 ‘int’

这是一个 void 函数,我如何返回 int 以及如何修复它?

原文由 SPLASH 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 970
2 个回答

尝试这样做:

 int main(int argc, char **argv)
{
    // Code goes here

    return 0;
}

return 0; 向操作系统返回一个 0 表示程序执行成功。

原文由 Michael 发布,翻译遵循 CC BY-SA 3.0 许可协议

C++ 要求 main() 的类型为 int

原文由 Nick Pavini 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
logo
Stack Overflow 翻译
子站问答
访问
宣传栏