Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Tests for end-of-file.
int_eof(inthandle**);**
| Function | Required Header | Optional Headers | Compatibility |
| _eof | <io.h> | <errno.h> | Win 95, Win NT |
For additional compatibility information, see Compatibility in the Introduction.
Libraries
| LIBC.LIB | Single thread static library, retail version |
| LIBCMT.LIB | Multithread static library, retail version |
| MSVCRT.LIB | Import library for MSVCRT.DLL, retail version |
Return Value
_eof returns 1 if the current position is end of file, or 0 if it is not. A return value of –1 indicates an error; in this case, errno is set to EBADF, which indicates an invalid file handle.
Parameter
handle
Handle referring to open file
Remarks
The _eof function determines whether the end of the file associated with handle has been reached.
Example
/* EOF.C: This program reads data from a file
* ten bytes at a time until the end of the
* file is reached or an error is encountered.
*/
#include <io.h>
#include <fcntl.h>
#include <stdio.h>
#include <stdlib.h>
void main( void )
{
int fh, count, total = 0;
char buf[10];
if( (fh = _open( "eof.c", _O_RDONLY )) == - 1 )
{
perror( "Open failed");
exit( 1 );
}
/* Cycle until end of file reached: */
while( !_eof( fh ) )
{
/* Attempt to read in 10 bytes: */
if( (count = _read( fh, buf, 10 )) == -1 )
{
perror( "Read error" );
break;
}
/* Total actual bytes read */
total += count;
}
printf( "Number of bytes read = %d\n", total );
_close( fh );
}
Output
Number of bytes read = 754