fgetpos
From cppreference.net
|
Défini dans l'en-tête
<stdio.h>
|
||
| (jusqu'à C99) | ||
| (depuis C99) | ||
Obtient l'indicateur de position du fichier et l'état d'analyse actuel (le cas échéant) pour le flux de fichier stream et les stocke dans l'objet pointé par pos . La valeur stockée n'a de sens que comme entrée pour fsetpos .
Table des matières |
Paramètres
| stream | - | flux de fichier à examiner |
| pos | - | pointeur vers un objet fpos_t pour stocker l'indicateur de position du fichier |
Valeur de retour
0 en cas de succès, valeur non nulle sinon.
Exemple
Exécuter ce code
#include <assert.h> #include <stdio.h> #include <stdlib.h> int main(void) { // prépare un fichier contenant 4 valeurs de type 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); // démonstration de l'utilisation de fsetpos pour revenir au début d'un fichier fp = fopen("test.bin", "rb"); fpos_t pos; fgetpos(fp, &pos); // stocke le début du fichier dans pos double d; rc = fread(&d, sizeof d, 1, fp); // lit le premier double assert(rc == 1); printf("First value in the file: %.1f\n", d); fsetpos(fp,&pos); // repositionne la position du fichier au début rc = fread(&d, sizeof d, 1, fp); // relit le premier double assert(rc == 1); printf("First value in the file again: %.1f\n", d); fclose(fp); // démonstration de la gestion d'erreur rc = fsetpos(stdin, &pos); if (rc) perror("could not fsetpos stdin"); }
Sortie :
First value in the file: 1.1 First value in the file again: 1.1 could not fsetpos stdin: Illegal seek
Références
- Norme C23 (ISO/CEI 9899:2024) :
-
- 7.21.9.1 La fonction fgetpos (p: TBD)
- Norme C17 (ISO/CEI 9899:2018) :
-
- 7.21.9.1 La fonction fgetpos (p: TBD)
- Norme C11 (ISO/CEI 9899:2011) :
-
- 7.21.9.1 La fonction fgetpos (p: 336)
- Norme C99 (ISO/CEI 9899:1999) :
-
- 7.19.9.1 La fonction fgetpos (p: 302)
- Norme C89/C90 (ISO/IEC 9899:1990) :
-
- 4.9.9.1 La fonction fgetpos
Voir aussi
|
renvoie l'indicateur de position actuel du fichier
(fonction) |
|
|
déplace l'indicateur de position du fichier vers un emplacement spécifique
(fonction) |
|
|
déplace l'indicateur de position du fichier vers un emplacement spécifique
(fonction) |
|
|
Documentation C++
pour
fgetpos
|
|