C语言文件操作一个问题

#include<stdio.h>#include<string.h>main(){FILE*fp;charbuff[64];if((fp=fopen("d:\\turb... #include<stdio.h>
#include<string.h>
main()
{FILE *fp;
char buff[64];
if((fp = fopen("d:\\turbo.txt","w"))==NULL)
{printf("File cannot be opened!\n");
system("pause");
exit(1);
}
while(strlen(fgets(buff,64,stdin))>0)//这里的条件貌似没有用
{fputs(buff,fp); //接上行 在Turbo C 2.0下按回车键无法结束
fputc('\n',fp);
}
fclose(fp);
system("pause");
}
展开
 我来答
zxm1986715
2009-07-13 · 超过24用户采纳过TA的回答
知道答主
回答量:84
采纳率:0%
帮助的人:58.4万
展开全部
这个程序的功能是不是从一个文件读一段文字然后再输出?如果是,我想那个while应该换成if,我觉得他可能是要判断文件当中是否有东西,也就是说如果没有东西就不输出。下面是fgets的一些介绍:
fgets函数用来从文件中读入字符串。fgets函数的调用形式如下:fgets(str,n,fp);此处,fp是文件指针;str是存放在字符串的起始地址;n是一个int类型变量。函数的功能是从fp所指文件中读入n-1个字符放入str为起始地址的空间内;如果在未读满n-1个字符之时,已读到一个换行符或一个EOF(文件结束标志),则结束本次读操作,读入的字符串中最后包含读到的换行符。因此,确切地说,调用fgets函数时,最多只能读入n-1个字符。读入结束后,系统将自动在最后加'\0',并以str作为函数值返回。
希望对你有所帮助。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式