当我运行下面的代码时,最初它运行得很顺利,但是在第十一次第十一次之后它开始以垃圾值和pritining输出为-656,+ NAL,0.0000,-123000.000等?
void main()
{
float x;
scanf("%f",&x);
printf("%f",x);
getch();
}
答案 0 :(得分:0)
我只是在这里猜测,但如果问题中的代码是您完整且实际的代码,那么您有undefined behavior因为scanf
而不是printf
函数都没有已声明,这意味着编译器将猜测它们采用什么参数,在您的情况下,编译器很可能错误地猜测。
要解决此问题,您需要包含声明这些函数的头文件,以便编译器知道它们:
#include <stdio.h>
int main(void)
{
...
}