Section courante

A propos

Section administrative du site

LSEEK

Longue position
Turbo C io.h

Syntaxe

long lseek(int numero, long NbreBytes, int mode)

Paramètres

Nom Description
numero Ce paramètre permet d'indiquer l'identificateur du fichier Handle.
NbreBytes Ce paramètre permet d'indiquer la position du pointeur dans le fichier
mode Ce paramètre permet d'indiquer le mode d'ouverture combiné du fichier
Constante Description
SEEK_CUR Cette constante indique un positionnement à partir de la position courante dans le fichier
SEEK_END Cette valeur indique un positionnement à partir de la position de la fin dans le fichier
SEEK_SET Cette valeur indique un positionnement à partir de la position du début dans le fichier

Retour

Valeur Description
0 ou supérieur Ces valeurs permettent d'indiquer le déplacement effectué en octets.
-1 Cette valeur permet d'indiquer qu'une erreur s'est produite et qu'il n'a pas été possible de positionner le pointeur. Dans ce cas, il sera possible d'obtenir des informations supplémentaires en consultant la variable errno.

Description

Cette fonction permet d'effectuer la position du pointeur de fichier Handle.

Remarques

Exemple

Prenons pour acquis que le fichier «readtext.txt» est le contenu :

Ceci est un exemple de lseek sur le site de Gladir.com

Voici un exemple montrant une utilisation plus classique de cette fonction :

  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. int main()
  5. {
  6.     FILE * Handle = fopen("readtext.txt", "r");
  7.     if(Handle != NULL) {
  8.         char Temp[4];
  9.         int I;
  10.         Temp[3] = 0;
  11.         for(I = 0; I <= 3; I++) {
  12.             lseek(Handle,I * 8, SEEK_SET);
  13.             fread(&Temp,3,1,Handle);
  14.             printf("%i:%s\n",I,Temp);
  15.         }
  16.         fclose(Handle);
  17.     }
  18.     return 0;
  19. }

on obtiendra le résultat suivant :

0:Cec
1: un
2:ple
3:see


Dernière mise à jour : Samedi, le 4 juillet 2015