Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
根据 unix 手册页ftell,要么返回 -1 以指示错误。
ftell
函数定义为:
long int ftell ( FILE * stream );
哪里long int是 32 位整数(你需要long long64 位)
long int
long long
但是(-1L) == 0x00000000FFFFFFFF LL,对于非常大的文件(大约 4GB),这应该是一个有效值,在这种情况下,我们如何知道是否发生了错误,或者我们只有一个非常大的文件?
(-1L) == 0x00000000FFFFFFFF LL
您可以检查errno或使用 64 位版本的ftellcalled off64_t ftello64(FILE *stream)。
errno
off64_t ftello64(FILE *stream)