简言之我的代码,字符输入( “%d”,&值)
#include <stdio.h>
int main()
{
int n;
scanf("%d", &n);
while(n != 0)
{
scanf("%d", &n);
printf("%d\n", n);
}
return 0;
}
它是为integer
输入写入。但是如果我输入character
(尽管n被删除为integer
),则循环变为无限并打印最后一个输入值integer
。如果我首先输入一个character
,它似乎会打印一个内存地址。我的问题是,如果我输入character
而不是integer
,这里发生了什么?
@ ricky2527摆脱无限循环的,为什么你认为?它有一个突破的条件。 – 2014-09-20 06:14:13
当字符被输入时,程序似乎会自行终止,你确定代码是正确的吗? – 2014-09-20 06:26:27
@darknight是的,我确定。尝试在终端的'gcc'编译器中运行它。 – 2014-09-20 06:29:06