这是在C
我想知道是否可以将fread()转换为缓冲区的某个索引。
例如:
的fread(缓冲液[10],1,5-,文件)
缓冲区[10] =某事 缓冲区[11] =某事 ... ... buffer [14] =某事
这有可能吗?这需要在没有任何额外缓冲区的情况下完成。 (严格的记忆限制)
谢谢!
答案 0 :(得分:1)
fread(buffer+10, 1, 5, file);
应该这样做。我相信你确保计数在缓冲限制范围内。
答案 1 :(得分:1)
您需要提供指向要存储数据的位置的指针。有两种方法可以做到这一点(但实际上它只是采用相同的方式,但语法不同)。
使用地址操作员&
:&buffer[10]
使用指针算法:buffer + 10
答案 2 :(得分:0)
fread的第一个参数是指针。在这种情况下,您可以这样做:fread(缓冲区+ 10,1,5,文件),您将获得所需的行为。这是因为buffer + i是指向数组“buffer”的第i个单元格的指针。