请帮助我调试程序
#include<stdio.h>
int main ()
{
int n = 1,t;
printf("How many Peanut Butter sandwiches do you want?");
scanf("%d", t);
while( n <= t )
{
printf("Making Sandwhitch no. %d\n", n);
n++;
}
return 0;
}
每次提交时,都会显示分段错误(核心已转储)。 该怎么办?
答案 0 :(得分:1)
scanf()
将指针作为参数,因此要在此处与t
一起使用,必须以这种方式使用scanf()
:scanf("%d", &t);
有关指针的更多信息,请参见此:Pointers in c
答案 1 :(得分:0)
scanf
使用可变地址。所以像下面这样传递参数地址:
scanf("%d", &t);
&t
指向t
地址。