我是一名学习 C++ 的新手程序员,当我在 Visual Studio 2010/12 和 Linux Mint 中的 Qt Creator 中尝试过这个问题时,可以将以下问题视为跨平台问题。
我已经设置了我的程序的 main() 函数来接受这样的命令行参数:
int main(int argc, char* argv[])
{
if(argc < 5)
{
printf("Not enough input parameters!\n");
printf("Usage:\n");
printf("'program' lamda1 lamda2 Attraction_Range Order_Param_Range\n");
return 0;
}
else
{
lamda1 = atof(argv[1]);
lamda2 = atof(argv[2]);
attRange = atof(argv[3]);
oRange = atof(argv[4]);
cout << lamda1 << lamda2 << attRange << oRange << endl;
}
}
但是,当我Ctrl+F5
在 Visual Studio 或Ctrl+R
Qt Creator 中进行编译时,代码会分叉到if
语句,因为我无法输入任何参数。我能否以某种方式将初始参数传递给我的程序,以便在它编译时,它可以立即转到else
上述示例的部分?
如果这是一个重复/错误的问题,我很抱歉,但我什至不知道如何在网上搜索。