C/stdio.h/fseek — различия между версиями

Материал из C\C++ эксперт
Перейти к: навигация, поиск
м (1 версия: Импорт контента...)
 
м (1 версия: Импорт контента...)
 
(нет различий)

Текущая версия на 10:23, 25 мая 2010

fseek: moves the file position pointer

    
//Header file:     #include <stdio.h>  
//Declaration:     int fseek(FILE *stream, long int offset, int origin); 
//Return:          zero on success or nonzero on failure. 
//"origin" must be one of:
    
//Name       Meaning
//SEEK_SET:  Seek from start of file 
//SEEK_CUR:  Seek from current location 
//SEEK_END:  Seek from end of file 

  #include <stdio.h>
  #include <stdlib.h>
  struct fullname {
    char firstName[40];
    char lastName[10];
  } info;
  int main(void){
    FILE *fp;
    if((fp=fopen("test", "rb")) == NULL) {
      printf("Cannot open file.\n");
      exit(1);
    }
    int client_num = 10;
    /* find the proper structure */
    fseek(fp, client_num*sizeof(struct fullname), SEEK_SET);
    /* read the data into memory */
    fread(&info, sizeof(struct fullname), 1, fp);
    fclose(fp);
  }