微软的_tell函数实现

微软的_tell函数实现

                                                                                                    Wentao Sun. Autodesk, Inc. (Shanghai, China.)

 

微软的_tell函数可以根据handle (int)返回当前文件操作指针的位置。

在Linux和Mac OS X上没有类似的函数,其实其内部实现也不是特别的复杂。

PS:

Linux和Mac OS X上的类似概念为ftell,但是其传入的第一个参数为FILE*,这里为int.

 

/* **
*tell.c - find file position
*
*       Copyright (c) Microsoft Corporation. All rights reserved.
*
*Purpose:
*       contains _tell() - find file position
*
******************************************************************************
*/

#include 
< cruntime.h >
#include 
< io.h >

/* **
*long _tell(filedes) - find file position
*
*Purpose:
*       Gets the current position of the file pointer (no adjustment
*       for buffering).
*
*Entry:
*       int filedes - file handle of file
*
*Exit:
*       returns file position or -1L (sets errno) if bad file descriptor or
*       pipe
*
*Exceptions:
*
******************************************************************************
*/

long  __cdecl _tell (
        
int  filedes
        )
{
        
return (_lseek(filedes, 0L , 1 ));
}

你可能感兴趣的:(函数)