使用代码
sscanf(argv[1], "%d", &num1);
sscanf(argv[2], "%c", &op);
sscanf(argv[3], "%d", &num2);
if ((op != '-')||(op != '*')||(op != '/')||(op != '+'))
{
puts("Error:");
printf("'%c' is not a valid operator", op);
return 0;
}
编译良好。
但是,不适用于任何输入。例如当输入是 4 + 7
控制台打印:
错误:
'+' 不是有效的运算符
编辑:没有这个错误检查代码,程序的其余部分可以正常运行,包括基于 op! 的 switch 语句。