这段程序是,阻塞,然后等待你输入一个整数,然后原样输出,然后再阻塞,如此循环。
(编译器:VS2005)
#include<stdio.h>int main(){ int i; while(1) { puts("请输入数字"); scanf("%d", &i); printf("以整数输出这个值:%d\n", i); } }
百度一下,发现scanf函数会从输入缓存(不太懂这是什么东西)中拿走一段数据,如果我输入的是数字的话这个操作就会清空输入缓存,当再次运行scanf函数的时候如果输入缓存是空的,就会产生一个阻塞。
然而还是不明白输入字母的情况下发生了什么。
阿晨1998
相关分类