免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3319 | 回复: 5
打印 上一主题 下一主题

fopen打开文件和系统相关么? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-04-01 16:22 |只看该作者 |倒序浏览
现在遇到一个问题,在UNIX的机器上用c的标准函数fopen无法打开大于2G的文件,我从网上找了一下有两种说法,一种是说fopen打开文件大小没有限制,受限制是和系统相关;另一种说法是fopen的函数用的是long型指针,因为现在系统大多是32位的,所以fopen只能打开2G的文件了。
    现在我这边UNIX的机器已经由原来最大支持2G的文件系统改成了大文件系统,但是现在无论在32位的UNIX机器上还是64位的IBMp650机器上,fopen均无法打开,所以我比较倾向后面一种解释。
    我想问一下fopen函数有限制没?如果没有的话如何打开一个大于2G的文件,为什么现在打开会失败呢;如果有的话是和系统相关还是和fopen本身的限制,能有fopen替代的函数么?

论坛徽章:
0
2 [报告]
发表于 2005-04-01 16:31 |只看该作者

fopen打开文件和系统相关么?

应该用系统调用。
c库可能不不管用了。

论坛徽章:
0
3 [报告]
发表于 2005-04-01 17:41 |只看该作者

fopen打开文件和系统相关么?

#define _LARGE_FILES

论坛徽章:
0
4 [报告]
发表于 2005-04-02 02:08 |只看该作者

fopen打开文件和系统相关么?

编译成64位的程序应当没问题.
xlc_r -q64

论坛徽章:
0
5 [报告]
发表于 2005-04-02 15:21 |只看该作者

fopen打开文件和系统相关么?

try -D_FILE_OFFSET_BITS=64

论坛徽章:
0
6 [报告]
发表于 2005-04-02 23:38 |只看该作者

fopen打开文件和系统相关么?

fopen64
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP