楼 主
[讨论]fgets会有优化吗?
发表于 2005-03-23 00:00 · 中国 重庆 渝中区 电信
银牌会员
★★★
积分 2,165
发帖 730
注册 2004-04-21 00:00
22年会员
UID 22966
性别 男
状态 离线
我们在编写关于磁盘文件读写的程序时,通常有两种方案。
1、逐个字符地读写并处理;
2、在程序中开一个字符数组作为缓冲区,一次读写多个字符进行处理。
听起来好像后一种可以减少磁盘读写次数,效率高些。只是要多增加数组空间,判断字符串长度。
不过,我想到:DOS系统应该有I/O缓冲区吧?按理说他会把单个的读写字符请求加入队列,批量处理。这是否意味着我们无需费心为“减少磁盘读写次数”的问题去做什么代码优化了?!
有谁能举一个例子说明这个问题吗?
第 2 楼
发表于 2005-03-23 00:00 · 中国 广东 广州 海珠区 电信
金牌会员
★★★★
D◎$ Fαп
积分 4,562
发帖 1,883
注册 2004-01-19 00:00
22年会员
UID 15812
性别 男
来自 广东广州
状态 离线
呵呵,原来是研究C语言,一开始看了标题的fgets我就联想到FlashGet~~~~DOS下的I/O缓冲区应该是Smartdrv或PC-cache这类磁盘读写缓冲器吧?
----====≡≡≡≡ 我的至爱,永远是
MSDOS!≡≡≡≡====----
第 3 楼
发表于 2005-03-25 00:00 · 中国 重庆 渝中区 电信
银牌会员
★★★
积分 2,165
发帖 730
注册 2004-04-21 00:00
22年会员
UID 22966
性别 男
状态 离线
论坛跳转: