社区
C语言
帖子详情
用文件模拟内存的读写问题
freshui
2009-08-16 11:14:40
因为内存都是动态随机访问的,给个地址就可以随机读写,
现在的问题是:读好办,fseek一下读就可以了,写怎么办?
如果我要修改一个数据,需要把访问所在位置及其之后的所有数据都要读出来再写回去吗?
有没有什么好的办法?
...全文
141
7
打赏
收藏
用文件模拟内存的读写问题
因为内存都是动态随机访问的,给个地址就可以随机读写, 现在的问题是:读好办,fseek一下读就可以了,写怎么办? 如果我要修改一个数据,需要把访问所在位置及其之后的所有数据都要读出来再写回去吗? 有没有什么好的办法?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
i_stone
2009-08-17
打赏
举报
回复
不是很清楚楼主的意思.如果只是写文件, 比如从文件的第1000个字节开始写,同样用SEEK(1000,CFILE::BEGIN),然后FILE.WRITE(BUF,LEN)就可以了啊
threewall
2009-08-17
打赏
举报
回复
一样记录相对位置就可以了
WizardOz
2009-08-17
打赏
举报
回复
写文件也是把文件指针移动到相应位置直接覆盖阿。
至于其后的数据,你不用管,除非你调用了文件截断功能,否则那些数据是不会丢失的。
kakashi0309
2009-08-17
打赏
举报
回复
指针不是都有类型的吗 要写的话也就是 sizeof(类型) 个字节
freshui
2009-08-17
打赏
举报
回复
ok, 测试了下,的确可以。
我记错了。
我印象中写中间的数据,会将之后的数据全冲掉。 :)
das_jack
2009-08-17
打赏
举报
回复
i/o操作本质都一样,这类问题,写个测试程序不就明白了吗
Arnold9009
2009-08-16
打赏
举报
回复
貌似不需要吧
内存写的时候,也是直接把指定地址的原有值覆盖掉的
文件写的时候,先移动指针到指定位置(类似内存的地址),然后写入指定数量的数据,这样操作
的话,我记得是直接覆盖掉那部分数据,其余的不影响的好像
c语言fat
文件
系统,【操作系统】简单FAT
文件
系统实现
本文介绍了一个使用C语言实现的简单FAT
文件
系统。系统支持创建、删除目录和
文件
,
读写
文件
,但不支持多级目录及追加写入。通过
模拟
磁盘、格式化、
读写
操作等实现
文件
系统的功能。代码中存在
内存
对齐
问题
的讨论,作者通过阅读他人代码并修复bug,理解了
内存
对齐的重要性。
【操作系统】简单FAT
文件
系统实现
本文介绍了一个简单的FAT
文件
系统实现,包括初始化、格式化、目录操作、
文件
读写
等功能。在
模拟
文件
系统中,作者遇到并解决了
内存
对齐等
问题
。虽然目前不支持多级目录和追加写操作,但提供了对
文件
系统的详细理解。
模拟
信号量对buffer
读写
本文通过C语言实现
模拟
信号量,解决
内存
满和
读写
速度不匹配的
问题
。主要内容包括三个部分:demo2.c用于核心逻辑,demo2.h为头
文件
,main.c为入口程序。编译过程中遇到的错误提示需要使用括号修正,同时通过GDB进行调试。
内存
虚拟盘(RAMDisk)是什么?
内存
虚拟盘(RAMDisk)是将部分物理
内存
模拟
为硬盘驱动器的技术。它利用
内存
高速
读写
特性提升数据访问效率,具有速度快、减少硬件损耗等优势。不同操作系统有不同实现方式,适用于临时
文件
处理、缓存加速等场景,但使用时需注意
内存
容量、数据持久化等
问题
。
android异常:Failed to pull selection
本文探讨了一次在使用
模拟
机读取
文件
时遇到的失败情况,通过切换到DDMS视图下的FileExplorer,
问题
迎刃而解。深入分析了这一现象,提供了解决
内存
读写
问题
的新思路。
C语言
70,039
社区成员
243,246
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章