res = disk.drv [pdrv] - > disk_read(buff,sector,count)是什么意思

时间:2015-05-25 09:14:35

标签: c

res = disk.drv[pdrv]->disk_read(buff, sector, count);

我不确定上述陈述的含义。 这是来自FATFS开源驱动程序,我正在尝试udnerstand它是如何工作的。我正在使用STM32 SPI接口。

1 个答案:

答案 0 :(得分:2)

如果你问一个关于哪个特定部分让你困惑的问题,你的学习经历可能会更大......但是让我们分解一下:

disk.drv表示"获取与drv"的disk成员对应的成员(指向数组的指针,在本例中)。

disk.drv[pdrv]表示"获取由pdrv"索引的数组元素。

disk.drv[pdrv]->disk_read表示"获取与disk_read" disk.drv[pdrv][0]对应的成员(函数指针)。

disk.drv[pdrv]->disk_read(buff, sector, count);表示"使用buffsectorcount作为参数"来调用该函数。

res = disk.drv[pdrv]->disk_read(buff, sector, count);表示"将该函数调用的返回值分配给res"。

似乎整个陈述的目的是从驱动器中读取一大块数据。

有问题吗?