在C语言中寻求过去的2GiB的最佳方法是什么?

00

在C语言中似乎有很多不同的寻找方法:

  • fseek()
  • fsetpos()
  • fseeko()
  • lseek()

许多似乎都有*64()版本:

  • fseeko64()
  • lseek64()

更为复杂的是,许多人似乎要求使用宏定义(如_LARGEFILE64_SOURCE_GNU_SOURCE)或使用64位版本。

在Windows,Linux,Mac,BSD,Solaris等操作系统上使用ANSI C来保证64位IO的最简单方法是什么,并且从什么时候开始每个操作系统都支持它?

chux-恢复莫妮卡

代码工作需要采用以下限制中的至少一项:

  1. long是64位+,然后使用fseek()

  2. 只有寻求位置的代码来过作为的结果fread(), fgets(), fscanf(), fgets(),所以使用fgetpos()fsetpos()如果文件是文本文件,这是最好的方法。

  3. 可以访问依赖于平台的64位搜索,例如lseek64()

  4. 多个32位fseek()

  5. rewind()一起使用效率低下的代码fgetc()/fread()

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

C语言中的“ ++ =“是什么?

来自分类Dev

C语言中的“ ++ =“是什么?

来自分类Dev

在C中用0填充2GiB文件

来自分类Dev

C语言中的对象是什么?

来自分类Dev

C语言中的struct是什么?

来自分类Dev

在C语言中此操作是什么?

来自分类Dev

破坏C语言结构的最佳方法是什么

来自分类Dev

{-'}在本机语言中是什么?

来自分类Dev

在C语言中测量程序周期数最可靠的方法是什么?

来自分类Dev

在C语言中解析二进制文件的高效且干净的方法是什么?

来自分类Dev

C语言中双向IPC的Linux最佳方法

来自分类Dev

C语言中双向IPC的Linux最佳方法

来自分类Dev

此代码在C语言中的输出是什么?

来自分类常见问题

C语言中的“ [[0 ... 255] =”语法是什么?

来自分类Dev

C语言中最严格的类型是什么意思?

来自分类Dev

C语言中的“ mux”芯片的符号是什么?

来自分类Dev

C语言中的原子类型是什么?

来自分类Dev

while(〜scanf在C语言中是什么意思?

来自分类Dev

在C语言中调用函数时\是什么意思?

来自分类Dev

c语言中程序的范围是什么意思?

来自分类Dev

什么是C语言中的read()

来自分类Dev

哈克语言中的“可变形”是什么?

来自分类Dev

dup2()在C语言中做什么

来自分类Dev

与C集成以进行联网的最佳语言是什么?

来自分类Dev

C语言中的OpenMP方法

来自分类Dev

C语言中的OpenMP方法

来自分类Dev

叉(); C语言中的方法

来自分类Dev

返回x是什么?:1`在C语言中意味着什么?

来自分类Dev

该代码做什么,在C语言中是什么样的?