English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Outils en ligne

O)

C Language Functions

C Language Arrays

C Language Pointers

C Language Strings

Contrôle de flux C

Structure C

Fichier C

Autres C

Manuel de référence du langage C

C Standard Library - <stdio.h>

Utilisation et exemple de la fonction fseek() de la bibliothèque C int fseek(FILE *stream, long int offset, int whence) Fonction de bibliothèque C stream Définir le flux offsetLe paramètre offset signifie que l'offset est à partir de la position de fichier donnée whence Nombre d'octets à trouver

Déclaration

Voici la déclaration de la fonction fseek().

int fseek(FILE *stream, long int offset, int whence)

Paramètres

  • stream -- C'est un pointeur vers un objet FILE, qui identifie le flux.
  • offset -- C'est l'offset relatif à whence, en octets.
  • whence -- C'est la position où commence l'ajout de l'offset. Il est généralement spécifié comme l'une des constantes suivantes :
ConstanteDescription
SEEK_SETDébut du fichier
SEEK_CURPosition actuelle du pointeur de fichier
SEEK_ENDFin du fichier

Valeur de retour

Si la fonction réussit, elle renvoie zéro, sinon elle renvoie une valeur non nulle.

Exemple en ligne

L'exemple suivant montre l'utilisation de la fonction fseek().

#include <stdio.h>
int main ()
{
   FILE *fp;
   fp = fopen("file.txt","w+");
   fputs("This is oldtoolbag.com", fp);
   fseek( fp, 7, SEEK_SET );
   fputs(" C Programming Langauge", fp);
   fclose(fp);
   return(0);
}

Compilons et exécutons le programme suivant, ce qui créera le fichier file.txtVoici le contenu. Au début, le programme crée un fichier et écrit C'est oldtoolbag.comMais après cela, nous avons réinitialisé le pointeur d'écriture à la septième position et utilisé la phrase puts() pour écrire à nouveau le fichier, comme suit :

C'est le langage de programmation C

Maintenant, utilisons le programme suivant pour afficher le contenu du fichier ci-dessus :

#include <stdio.h>
int main ()
{
   FILE *fp;
   int c;
   fp = fopen("file.txt","r");
   while()1)
   {
      c = fgetc(fp);
      if( feof(fp) )
      {
          break ;
      }
      printf("%c", c);
   }
   fclose(fp);
   return(0);
}

C Standard Library - <stdio.h>