ungetc的总结

  对于ungetc是把数字放入回输入端,要不然在处理程序的时候还需要设置变量来进行对这个变量的处理。它在放回的时候是放回在了前面,放在最前面,下次直接第一个将放进去的读取出来。下面是一个示例代码:

  

#include<stdio.h>
#include<ctype.h>
int main(){
int ch;
int result=0;
printf("Enter an integer:");
/*Read in and convert number*/
while(((ch=getchar())!=EOF)&&isdigit(ch)){
result = result*10 + ch-'0';
}
if(ch!=EOF)
ungetc(ch,stdin);
printf("Number = %d\nNextcharacter in stream = '%c'",result,getchar());
return 0;
}

输入以及输出结果:

[root@localhost unix_learn]# ./test_ungetc
Enter an integer:521ab
Number = 521

posted @ 2012-07-07 18:08  gui__li  阅读(457)  评论(0编辑  收藏  举报