C语言文件关闭函数fclose(文件指针)疑问

如下代码先打开文件->获取文件第一行->关闭文件->把文件第一行显示在编辑框,疑问是已经把文件关闭了怎么还能对文件的第一行给显示到编辑框呢?是不是可以理解为打开一个文档然... 如下代码先打开文件->获取文件第一行->关闭文件-> 把文件第一行显示在编辑框,
疑问是已经把文件关闭了怎么还能对文件的第一行给显示到编辑框呢?是不是可以理解为打开一个文档然后复制里面信息即使关闭文件我复制的信息仍然有效??
{
FILE * fp = fopen(sizeFile,"r");
char line[256];
fgets(line,sizeof(line),fp);
fclose(fp);//这边已经关闭文件
SetDlgItemText(hwnd,IDC_EDIT1,line);//这边还能把文件信息写到编辑框?
}
展开
 我来答
cdyzxy
2013-10-10 · TA获得超过2.1万个赞
知道大有可为答主
回答量:1.4万
采纳率:84%
帮助的人:3583万
展开全部
假如文件是存储在硬盘上,那么所有内容是用磁化的方法写的,能掉电不丢失。
你的程序将文件打开后,将其内容的第1行读入了计算机的随机存储器中(具体就是line数组)
关闭文件后,文件仍然保持不变
line数组已经读到了数据,这些数据虽然等于文件的第1行,但已经与文件没有关系了,你使用和修改这些数据不会影响到文件,除非你再打开这个文件向里边写。
在编辑框中输出的是line数组的内容,它确实与文件的第1行内容相同!以后文件内容改了,你还要输出的话,需要再打开文件读一遍。
风若远去何人留
2015-09-23 · 知道合伙人互联网行家
风若远去何人留
知道合伙人互联网行家
采纳数:20412 获赞数:450104
专业C/C++软件开发

向TA提问 私信TA
展开全部
fclose函数为C语言标准库函数,用来关闭一个已打开的文件。

该函数在stdio.h中声明,原型为:

int fclose(FILE *fp);
当fclose被调用时,一个打开的文件(以文件指针fp标识)会被关闭,关闭后,无法再对fp执行读写操作。
如果关闭成功,返回0,否则返回负值。
C语言文件操作的标准流程为

1 fopen打开文件;
2 通过各种读写函数,读写文件;
3 所有操作结束后,调用fclose关闭文件。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
kevin_sxw
2013-10-09 · TA获得超过165个赞
知道小有建树答主
回答量:80
采纳率:0%
帮助的人:34.9万
展开全部
fgets(line, sizeof(line), fp)函数如果成功返回,此时已经将文件中的第一行读取到本地缓冲区line中,所以即使文件已关闭缓冲区的内容不会受到影响。
也就是说,SetDlgItemText(hwnd,IDC_EDIT1,line)可以吧文件信息写到编辑框。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-10-09
展开全部
文件打开的时候,值已经给了 line;

当你文件关闭后,line 的值还是在的;

所以,还能把 line 的值给编辑框
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
沧海雄风2009
2018-02-28 · TA获得超过1.1万个赞
知道大有可为答主
回答量:8525
采纳率:79%
帮助的人:2741万
展开全部
第一行内容已经读到内存变量 char line里面了啊
然后把line的内容显示到编辑框里了 没毛病啊
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式