fgetpos

De RAD Studio
Aller à : navigation, rechercher

Remonter à Stdio.h - Index


Header File

stdio.h

Category

Input/output Routines

Prototype

int fgetpos(FILE *stream, fpos_t *pos);

Description

Gets the current file pointer.

fgetpos stores the position of the file pointer associated with the given stream in the location pointed to by pos. The exact value is unimportant; its value is opaque except as a parameter to subsequent fsetpos calls.

Return Value

On success fgetpos returns 0. On failure it returns a nonzero value and sets the global variable errno to

EBADF

Bad file number

EINVAL

Invalid number



Example



 #include <stdlib.h>
 #include <stdio.h>
 void showpos(FILE *stream);
 int main(void)
 {
    FILE *stream;
    fpos_t filepos;
    /* open a file for update */
    stream = fopen("DUMMY.FIL", "w+");
    /* save the file pointer position */
    fgetpos(stream, &filepos);
    /* write some data to the file */
    fprintf(stream, "This is a test");
    /* show the current file position */
    showpos(stream);
    /* set a new file position, display it */
    if (fsetpos(stream, &filepos) == 0)
      showpos(stream);
    else
    {
       fprintf(stderr, "Error setting file pointer.\n");
       exit(1);
    }
    /* close the file */
    fclose(stream);
    return 0;
 }
 void showpos(FILE *stream)
 {
    fpos_t pos;
    /* display the current file pointer
       position of a stream */
    fgetpos(stream, &pos);
    printf("File position: %ld\n", pos);
 }



Portability



POSIX Win32 ANSI C ANSI C++

+

+

+

+