main(int argc,char **argv)
{
int n1,n2,n3;
if(argc!=4)
{
printf("Usage:./cal 10+20\n");
return;
}
n1=atoi(argv[1]);
n2=atoi(argv[3]);
switch(argv[2][0])
{
case '+': n3=n1+n2;
printf("n3=%d\n",n3);
break;
case '*': n3=n1*n2;
printf("n3=%d\n",n3);
break;
case '-': n3=n2-n1;
printf("n3=%d\n",n3);
break;
case '/0': n3=n1/n2;
printf("n3=%d\n",n3);
default: printf("unknown option...\n");
}
}
將輸入提供給程序後。它不提取輸出。只有它正在執行「if(argc!= 4)」。爲什麼???使用C中的命令行參數計算器
因爲像'./cal 10 + 20'這樣的輸入不滿足'f(argc!= 4)',很簡單。 –
HInt:嘗試打印'argv [1]',:) –
用'./cal 10「+」20'調用程序 –