最近在做文件传输,发现在android下用f系列的C库函数去读取文件文件大小会受到2G大小的约束,查阅了很久,最后只能去看google的libc源码,发现了以下几个问题: 1.bionic的libc是谷歌基于bsd开发的,大约200k左右,比gnu的libc小一半左右,也比uClibc小,谷歌应该不只是为了规避LGPL的静态链接约束才单独开发的,可能是为了效率问题: 2.gnu的ftello等系列函数一般可以用宏-D_FILE_OFFSET_BITS 64指定off_t的类型来控制函数是否支持2…