小编use*_*638的帖子

HOWTO:C中的跨操作系统大文件IO?

简而言之:C中的跨操作系统,大文件支持是可怕的.

目标:我试图让"单向"(最可能是基于宏的)允许32位AND 64位具有大文件支持.理想情况下,使用typedef,#ifdef,#(n)定义等宏包装器可以允许以#include库或一组定义的宏的形式支持基本的大文件.

研究: POSIX的文件操作在BSD/Mac/Linux上的性能非常好,适用于32和64位IO,文件大小超过典型的2 ^ 31大小,但即使在Windows上使用clang或mingw,由于M $,我也无法利用这些调用.愚蠢的POSIX实现(如果这就是我们想要的那个......).我倾向于在Windows上使用CreateFile(),ReadFile(),WriteFile(),但这在方法和数据类型方面与POSIX的open()/ read()/ write()/ close()/ etc完全不同.用过的.

问题:在我的键盘和几本教科书上敲击之后,我决定轮询所有人,看看:你们/ gals如何完成支持大文件的跨操作系统文件I/O?

PS我有研究链接:

c io file

9
推荐指数
1
解决办法
344
查看次数

标签 统计

c ×1

file ×1

io ×1