linux下c语言读取文件时让其输出一行停顿几秒的问题

#include<stdio.h>intmain(){FILE*f=fopen("txt//heart.txt","r");if(!f){printf("打开失败");}... #include<stdio.h>
int main() {
FILE*f = fopen("txt//heart.txt", "r");
if (!f) {
printf("打开失败");
} else {
int ch;
while (ch = getc(f), ch != EOF) { //end of file
if (ch == ' ') {
printf("\n");
}
printf("%c", ch);
}
}
fclose(f);
return 0;
}
如何让其读完空格换行后停顿2秒继续读取
展开
 我来答
qhbsyys
2012-07-30 · TA获得超过605个赞
知道答主
回答量:42
采纳率:0%
帮助的人:75.8万
展开全部
头文件添加:

#include <unistd.h>
#include <stdlib.h>

然后,在输出换行后面加上语句

int ret ;
ret=alarm(2) ; /*调用alarm定时器函数*/
pause() ;

这样就能实现你要的功能了。
追问

有错啊!

追答
抱歉,电脑没有linux的编译环境,所以没有编译。

后来找了个linux环境,发现不用那么麻烦的,只需要 一个 sleep 函数就行了。我编译通过的代码为:
#include
#include
#include
int main() {
FILE*f = fopen("heart.txt", "r");
if (!f) {
printf("打开失败");
} else {
int ch;
while (ch = getc(f), ch != EOF) { //end of file
if (ch == ' ') {
printf("\n");
//int ret;
//ret = alarm(2);
//pause();
sleep(2);
}
printf("%c", ch);
}
}
fclose(f);
return 0;
}

编译命令为:

[xl@xiaolei ~]$ gcc -o ts2t tst.c
[xl@xiaolei ~]$ ./tst

参考资料: http://blog.csdn.net/guoping16/article/details/6583920

1000in1
2012-07-30 · 超过44用户采纳过TA的回答
知道答主
回答量:122
采纳率:0%
帮助的人:98.4万
展开全部
usleep(n) //n微秒
Sleep(n)//n毫秒
sleep(n)//n秒
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
岁月诗酒悠然
2012-07-30
知道答主
回答量:48
采纳率:0%
帮助的人:17.4万
展开全部
sleep(2)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式