这是我的主要功能:
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以及如何修复它?
答案 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
更改为主函数的末尾。