如果我正在阅读文件:
fptr = fopen(read_path, "rb");
fread(contents, size_in_bytes, count, fptr);
假设我想读取4个字节,然后跳过4个字节,然后读取4个,依此类推。我怎样才能做到这一点?具体来说,我将如何操纵/推进fptr
?
答案 0 :(得分:7)
使用fseek
的示例:
FILE * fptr;
fptr = fopen("example.txt", "rb");
fread(contents, 1, 4, fptr);
fseek(fptr, 4, SEEK_CUR);
// ...
fclose(fptr);
答案 1 :(得分:3)
我认为您正在寻找的功能是fseek
答案 2 :(得分:2)
如果要跳过的金额很小,您可以随时将其读入假人并处理它:
char contents[SOME_SIZE];
char dummy[4];
fptr = fopen(read_path, "rb");
fread(contents, 4, 1, fptr);
fread(dummy, 4, 1, fptr);
fread(contents+4, 4, count-1, fptr);