ftell.c

来自「操作系统源代码」· C语言 代码 · 共 39 行

C
39
字号
/* * ftell.c - obtain the value of the file-position indicator of a stream *//* $Header: ftell.c,v 1.4 90/01/22 11:12:12 eck Exp $ */#include	<stdio.h>#if	(SEEK_CUR != 1) || (SEEK_SET != 0) || (SEEK_END != 2)#error SEEK_* values are wrong#endif#include	"loc_incl.h"#include	<sys/types.h>off_t _lseek(int fildes, off_t offset, int whence);long ftell(FILE *stream){	long result;	int adjust = 0;	if (io_testflag(stream,_IOREADING))		adjust = -stream->_count;	else if (io_testflag(stream,_IOWRITING)		    && stream->_buf		    && !io_testflag(stream,_IONBF))		adjust = stream->_ptr - stream->_buf;	else adjust = 0;	result = _lseek(fileno(stream), (off_t)0, SEEK_CUR);	if ( result == -1 )		return result;	result += (long) adjust;	return result;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?