【发布时间】:2019-10-30 04:07:00
【问题描述】:
我正在从 ARM micro 的 SD 卡中读取值:
Res = f_read(&fil, (void*)buf, 6, &NumBytesRead);
其中fil 是指针,buf 是存储数据的缓冲区。
这就是问题所在:它是一个数组,但我想将该数组的内容放在一个变量中。
举个实际的例子:从文件中读取的6个字节是:
buf[0] = 0x1B
buf[1] = 0x26
buf[2] = 0xB3
buf[3] = 0x54
buf[4] = 0xA1
buf[5] = 0xCF
我希望:uint64_t data 等于 0x1B26B354A1CF。也就是说,数组的所有元素“连接”在一个 64 位整数中。
【问题讨论】:
-
fil指向什么,为什么要传递它的地址? -
@M.M 根据文档:FIL* FileObject, /* 指向文件对象结构的指针 */。 fil 被声明为:静态 FIL fil;