标题:
问个菜问题,但不一定就好解决哦
[打印本页]
作者:
mrdeadman
时间:
2004-9-8 00:00
标题:
问个菜问题,但不一定就好解决哦
#include <stdio.h>
main()
{
int i=0;char wb[100],s[10],c;
for(i=0;i<1000;i++)
{wb=getchar(); if(wb==EOF) break;}
scanf("%s",s);getch();
}
我的问题是,为什么循环里边碰到eof以后,后边的scanf就跳过了呢?如何让他执行呢?
作者:
Wengier
时间:
2004-9-8 00:00
因為break跳出了整個循環嘛。。
作者:
mrdeadman
时间:
2004-9-8 00:00
可是scanf("%s",s);在循环外呢,老兄你没看清吧
作者:
bush
时间:
2004-9-13 00:00
不是這樣的!你應該用:getche()或getch()
#include <stdio.h>
main()
{
int j=0;char wb[100],s[10],c;
for(j=0;j<100;j++)
{
wb[j]=getche();
if(wb[j]==EOF)
break;
}
scanf("%s",s);
getch();
}
[此贴子已经被作者于2004-9-13 22:58:20编辑过]
作者:
mrdeadman
时间:
2004-9-13 00:00
楼上的,这么搞不行,用getche时,连回车符都忽略了,我的目的是,先要读入一大段文本,并且让它显示(所以getch也不行),完成这个工作后还要能执行scanf读入文件名,以便保存.
作者:
cdl
时间:
2004-9-20 00:00
在输入完文本之后,在文件名输入之前需要清一下键盘缓冲区。
作者:
xiexiaohu
时间:
2004-10-17 00:00
楼上的,键盘只能缓冲20个字符,清空缓冲有什么用?
欢迎光临 中国DOS联盟论坛 (http://cndos.fam.cx/forum/)
Powered by Discuz! 2.5