偏移参数lseek是类型off_t.在32位编译环境中,此类型默认为32位有符号整数 - 但是,如果在所有系统包括之前使用此宏定义编译:
#define _FILE_OFFSET_BITS 64
Run Code Online (Sandbox Code Playgroud)
...然后off_t将是64位签名类型.
因为fseek,fseeko除了它使用off_t偏移类型之外,该函数是相同的,这允许上述解决方案也可以使用它.
4字节无符号整数可以表示最大值为4294967295,这意味着如果要移动超过4G,则需要使用lseek64().此外,您可以使用fgetpos()和fsetpos()来更改文件中的位置.
| 归档时间: |
|
| 查看次数: |
1617 次 |
| 最近记录: |