关于C语言文件操作的问题,谢谢大大了,谢谢

#include<stdio.h>#include<stdlib.h>voidmain(){FILE*fp;char*s1="Fortran",*s2="Basic";i... #include <stdio.h>#include <stdlib.h>
void main()
{
FILE *fp;

char *s1="Fortran",*s2="Basic";
if((fp=fopen("E:\\text.txt","wb"))==NULL)
{
printf("Can't open text.txt file\n");
exit(0);
}

fwrite(s1,7,1,fp);
fseek(fp,0L,SEEK_SET);
fwrite(s2,5,1,fp);
fclose(fp);}
在书上看到使用文件方式W是覆盖原有数据,为什么最终文件中是Basican,而不是Basic?
展开
 我来答
百度网友3038d88
2013-03-25 · TA获得超过1097个赞
知道小有建树答主
回答量:1670
采纳率:0%
帮助的人:1257万
展开全部
标识符"w" 打开只写文件,若文件存在则文件长度清为0,即该文件内容会消失。若文件不存在则建立该文件。

你这里只做了一次 打开操作.
你第2次 write的时候是不会有清空操作的.

注意到你的 fseek 文件指针移动到了文件开始,后又写入5个单位长度, 所以是Basican
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式