table of contents
fgetpos(3) | 2007-10-27-16:31 | fgetpos(3) |
Назва¶
fgetpos, fseek, fsetpos, ftell, rewind - змінюють місцеположення потоку
Огляд¶
#include <stdio.h>
int fseek(FILE * stream, long offset, int whence);
long ftell(FILE * stream);
void rewind(FILE * stream);
int fgetpos(FILE * stream, fpos_t * pos''');''
Опис¶
Функція fseek встановлює індикатор позиції файлу для потоку, на який вказує stream. Нова позиція, вимірювана в байтах, обчислюється шляхом додавання байтів зміщення до позиції, вказаної whence. Якщо whence встановлено до SEEK_SET, SEEK_CUR або SEEK_END, зміщення буде відносним до початку файлу, поточної позиції або кінця файлу, відповідно. Вдалий виклик функції fseek очищує вказівник кінця файлу для даного потоку і скасовує будь-які ефекти функції ungetc (3).
Функція ftell добуває поточне значення індикатору позиції файлу для потоку, на який вказує stream.
Функція rewind встановлює вказівник позиції файлу для потоку, на який вказує stream, до початку файлу. Вона рівнозначна
(void)fseek(stream, 0L, SEEK_SET)
Функції fgetpos і fsetpos являються альтернативними еквівалентами ftell і fseek (з whence встановленим до SEEK_SET), встановлюючи і зберігаючи поточне значення зміщення файлу у або з об'єкту, на який посилається pos. На деяких не-Юнікс системах, fpos_t-об'єкт може бути складним і ці рутини виявитись єдиним способом системонезалежної зміни позиції текстового потоку.
Повернені значення¶
Функція rewind не повертає жодного значення. Після вдалого виконання, fgetpos, fseek і fsetpos повертають 0 і ftell повертає поточне зміщення. У протилежному випадку повертається -1 і глобальну змінну errno встановлено для вказівки помилки.
Коди помилок¶
Відповідність стандартам¶
Функції fgetpos, fsetpos, fseek, ftell і rewind відповідають стандартові ANSI X3.159-1989 ("ANSI C").
Дивіться також¶
2007-10-27-16:31 | © 2005-2007 DLOU, GNU FDL |