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

时间:2016-11-02 14:05:39

标签: c++

这是我的主要功能:

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以及如何修复它?

3 个答案:

答案 0 :(得分:7)

尝试这样做:

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

    return 0;
}

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

答案 1 :(得分:3)

C ++要求main()int类型。

答案 2 :(得分:1)

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