磁盘I/O在C中如何使用扇区工作?

11 浏览
0 Comments

磁盘I/O在C中如何使用扇区工作?

我在理解Linux和C语言中的磁盘扇区方面遇到了困难。以以下代码为例:

#include 
int main() {
    FILE *fp = fopen("myfile", "rb+");
    char foo;
    fread(&foo, sizeof(foo), 1, fp);
}

在这个例子中,如果我的磁盘扇区大小为512字节,当我调用fread()时,我会从磁盘读取512字节吗?fwrite()是否也是一样的?

最佳实践是将整个扇区读入内存,进行任何修改,然后将整个扇区写回磁盘。

0