fgetpos
From cppreference.net
|
Definido en el encabezado
<stdio.h>
|
||
| (hasta C99) | ||
| (desde C99) | ||
Obtiene el indicador de posición del archivo y el estado actual de análisis (si existe) para el flujo de archivo stream y los almacena en el objeto apuntado por pos . El valor almacenado solo tiene significado como entrada para fsetpos .
Contenidos |
Parámetros
| stream | - | flujo de archivo a examinar |
| pos | - | puntero a un objeto fpos_t para almacenar el indicador de posición del archivo |
Valor de retorno
0 en caso de éxito, valor distinto de cero en caso contrario.
Ejemplo
Ejecutar este código
#include <assert.h> #include <stdio.h> #include <stdlib.h> int main(void) { // preparar un archivo que contiene 4 valores de tipo double enum {SIZE = 4}; FILE* fp = fopen("test.bin", "wb"); assert(fp); int rc = fwrite((double[SIZE]){1.1, 2.2, 3.3, 4.4}, sizeof(double), SIZE, fp); assert(rc == SIZE); fclose(fp); // demostración del uso de fsetpos para volver al inicio de un archivo fp = fopen("test.bin", "rb"); fpos_t pos; fgetpos(fp, &pos); // almacenar el inicio del archivo en pos double d; rc = fread(&d, sizeof d, 1, fp); // leer el primer double assert(rc == 1); printf("First value in the file: %.1f\n", d); fsetpos(fp,&pos); // mover la posición del archivo al inicio rc = fread(&d, sizeof d, 1, fp); // leer el primer double nuevamente assert(rc == 1); printf("First value in the file again: %.1f\n", d); fclose(fp); // demostración del manejo de errores rc = fsetpos(stdin, &pos); if (rc) perror("could not fsetpos stdin"); }
Salida:
First value in the file: 1.1 First value in the file again: 1.1 could not fsetpos stdin: Illegal seek
Referencias
- Estándar C23 (ISO/IEC 9899:2024):
-
- 7.21.9.1 La función fgetpos (p: TBD)
- Estándar C17 (ISO/IEC 9899:2018):
-
- 7.21.9.1 La función fgetpos (p: TBD)
- Estándar C11 (ISO/IEC 9899:2011):
-
- 7.21.9.1 La función fgetpos (p: 336)
- Estándar C99 (ISO/IEC 9899:1999):
-
- 7.19.9.1 La función fgetpos (p: 302)
- Estándar C89/C90 (ISO/IEC 9899:1990):
-
- 4.9.9.1 La función fgetpos
Véase también
|
devuelve el indicador de posición actual del archivo
(función) |
|
|
mueve el indicador de posición del archivo a una ubicación específica en un archivo
(función) |
|
|
mueve el indicador de posición del archivo a una ubicación específica en un archivo
(función) |
|
|
Documentación de C++
para
fgetpos
|
|