c - 磁盘 I/O 如何与 C 中的扇区一起工作?
问题描述
我无法理解 Linux 和 C 语言中的磁盘扇区。以下面的代码为例:
#include <stdio.h>
int main() {
FILE *fp = fopen("myfile", "rb+");
char foo;
fread(&foo, sizeof(foo), 1, fp);
}
在这个例子中,如果我的磁盘扇区大小是 512 字节,我会在调用时从磁盘读取 512 字节fread()
吗?是一样的fwrite()
吗?
最佳做法是将整个扇区读入内存,进行任何修改,然后将整个扇区写回磁盘?
解决方案
推荐阅读
- excel - 基于两个变量循环范围和计数
- reactjs - 屏幕尺寸较小时如何不显示表格中的图像?
- angular - Electron 构建成功后出现白屏
- angular - p-schedule : 如果一个事件叠加在另一个事件上,则不能删除它
- command-line - pycharm,pytest的编辑配置参数不起作用
- ruby-on-rails - ApplicationController 中的动态/正则表达式参数
- r - 有没有比 file.info() 更快的替代方法?
- powerbi - 将每行具有不同度量的 Tableau 报表转换为 Power BI
- reactjs - react-hook-form 不发送 PasswordConfirm
- c - 如何使ASCII表中字母的数量等于C中的数字范围的条件?