Функция rewind

Прототип функции rewind:

void rewind ( FILE * filestream );

Заголовочный файл

Название Язык
stdio.h С
cstdio С++

Описание

Устанавливает внутренний указатель положения файла в начальное положение (начало файла).

Эквивалентный вызов функции fseek для возвращения указателя на начало:

fseek( stream , 0L , SEEK_SET );

Не маловажным отличием данных функций является то, что, в отличие от функции fseek, rewind обнуляет индикатор ошибок.
Для потоков, открытых в режиме обновления (чтения + записи), вызов функции rewind позволяет переключаться между режимами чтения и записи.

Параметры:

  • filestream
    Указатель на объект типа FILE, идентифицируемый поток.

Возвращаемое значение

нет

Пример: исходный код программы

//пример использования rewind

#include <cstdio>
#include <iostream>

int main()
{
  FILE * ptrFile = fopen("file.txt","w+");
  char buffer [27];

  for(int counter = 'A'; counter <= 'Z' ; counter++)
    fputc( counter, ptrFile);             // записать символ в файл

  rewind(ptrFile);                        // установить внутренний указатель файла в начало
  fread(buffer, 1, 26, ptrFile);          //считать из файла 26 символов и сохранить в буфер
  fclose (ptrFile);                       //закрыть файл
  buffer[26]='\0';                      //звершить строку
  puts(buffer);                         //вывод на экран
  return 0;
}

Пример работы программы

Файл file.txt созданный для чтения и записи, сначала заполняется алфавитом. Затем содержимое файла считывается в буфер для дальнейшего вывода в стандартный поток:

CppStudio.com
ABCDEFGHIJKLMNOPQRSTUVWXYZ
Автор: Marienko L.
Дата: 15.09.2012
Поделиться:

Оставить комментарий

Вы должны войти, чтобы оставить комментарий.