查找文件位置>;2^32英寸C
我正在编写一个程序,将大量数据写入一个文件,但该文件最终将足够大,我无法通过它查找,因为该位置将大于32位计算机上的最大整数大小。我想寻找一个位置至少2^35。正确的方法是什么 编辑:查找文件位置>;2^32英寸C,c,file,C,File,我正在编写一个程序,将大量数据写入一个文件,但该文件最终将足够大,我无法通过它查找,因为该位置将大于32位计算机上的最大整数大小。我想寻找一个位置至少2^35。正确的方法是什么 编辑: 我正在尝试制作一个跨平台的程序,但我目前正在使用Linux 32位操作系统。对于标准Linux/glibc(不能为其他人担保?)环境: #定义文件偏移量64位——将关闭为64位类型 使用stdio.h中的stdlib函数fseeko()和ftello(),而不是它们的常规对应函数 另请参见各自的手册页。根据您
我正在尝试制作一个跨平台的程序,但我目前正在使用Linux 32位操作系统。对于标准Linux/glibc(不能为其他人担保?)环境:
——将#定义文件偏移量64位
关闭为64位类型
- 使用stdio.h中的stdlib函数
和fseeko()
,而不是它们的常规对应函数ftello()
另请参见各自的手册页。根据您开发的平台,将
\u FILE\u OFFSET\u BITS
定义为64
,并使用标准库函数fseeko
和ftello
可以解决您的问题。什么操作系统?WindowsSetFilePointer
可以进行64位搜索。什么平台?大多数64位操作系统本机支持大于2GB的文件。fseek()
不限于int
大小,而是long
。您的系统上的LONG\u MAX
是什么?您可以在那里找到答案: