当我运行此代码时,会出现这样的消息。 Project.exe已停止工作
我的其他一些代码有效,但这似乎给我一个错误。
#include<stdio.h>
#include<conio.h>
void main()
{
int n1, n2, sum;
puts("first number");
scanf("%d", n1);
fflush(stdin);
puts("second number");
scanf("%d", n2);
sum = n1 + n2;
printf("%d + %d = %d", n1, n2, sum);
getch();
}
我基本上想要添加两个数字。
答案 0 :(得分:2)
scanf
获取存储输入值的变量的地址。您需要将scanf
来电更改为
scanf("%d", &n1);
scanf("%d", &n2);
// ^ note the & operator
另请注意,在输入流上调用fflush
是未定义的行为。因此,fflush(stdin)
不正确。您需要手动读取并丢弃stdin
流中剩余的无关输入。