虽然试图采取一些C的论点,我发现很难得到argv[]
工作。我有:为什么我会得到一个浮点异常?
int main(int argc, char *argv[])
{
void updateNext();
void fcfs();
void spn();
void srt();
fp = fopen(argv[0],"r");
op = fopen("output.dat","a+");
if (strcmp(argv[1],"FCFS")!=0)
{
fcfs();
}
if (strcmp(argv[1],"SPN")!=0)
{
spn();
}
if (strcmp(argv[1],"SRT")!=0)
{
srt();
}
}
我想在myprog input.data FCFS
一种格式来输入的东西,但上面的代码让我对“浮点异常”的异常后,走了一个错误我硬编码input.dat
作为一个字符串程序。或许argv[0]
有问题?
是。 argv [0]通常指编译的二进制myprog,并且从不包含第一个命令行参数。 – 2012-04-04 19:08:24
'strcmp(argv [1],“FCFS”)!= 0' - 根据你的代码的其余部分应该是'strcmp(argv [1],“FCFS”)== 0'。由于如果字符串匹配,'strcmp'返回0 – valdo 2012-04-04 19:11:00