中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-01 13:24
中国DOS联盟论坛 » DOS开发编程 & 发展交流 (开发室) » [讨论]fgets会有优化吗? 查看 718 回复 2
楼 主 [讨论]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
性别 男
状态 离线
我是说系统I/O缓冲是操作系统的基本管理功能吧?
论坛跳转: