当我从msys命令行运行此程序时,它会打开一个名为calc.exe(程序名称)的窗口,其中包含以下错误: calc.exe遇到问题,需要关闭。对于给您带来的不便,我们深表歉意。
这是我的主要功能:
int main(int argc, char *argv[])
{
int num1, num2, ans;
hist_file_create();
if (argc < 2 || argc > 2)
kill("ERROR: Use: calc <operation_type>");
char operation_type = argv[2][0];
switch(operation_type)
{
// Addition
case 'a':
printf("Enter a number:\n");
scanf("%d", &num1);
printf("Enter a second number\n");
scanf("%d", &num2);
ans = num1 + num2;
printf("%d + %d = %d", num1, num2, ans);
break;
// Operation type list
case 'l':
operation_type_list();
break;
default:
kill("Invalid operation type. To see a list of recognised operation types, type l");
}
system("PAUSE");
}
我知道它仍然可能非常混乱,但是我知道我只是想让它工作,并在以后清理它。 您可能需要的任何其他信息。
答案 0 :(得分:1)
此条件确保您有2个参数或程序存在 if(argc&lt; 2 || argc&gt; 2) kill(“错误:使用:计算”);
然而,下一行是访问第三个参数 char operation_type = argv [2] [0];
哪个不存在。程序被杀了