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

ERROR: '::main' must return 'int'

本文关键字:返回 int 错误 main      更新时间:2023-10-16

这是我的主要功能:

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: error: '::main'必须返回'int'

这是一个void函数,我怎么能返回int,我怎么修复它?

试着这样做:

int main(int argc, char **argv)
{
    // Code goes here
    return 0;
}

return 0;返回0给操作系统,表示程序执行成功。

c++要求main()int类型

函数声明为int main(..);,因此将void返回值更改为int,并在主函数末尾更改为return 0