![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| NiJazz |
|
|||
|
Unregistered |
fseek: int fseek(FILE *stream, long offset, int fromwhere), которая перемещает указатель
файла stream на offset байтов от позиции fromwhere; возвращает 0 при успешном завершении. Дело в том, что если int fromwhere не равно нулю, то функция возвращает -1 и, как следствие, нет выполняется. Почему это так? Как с этим справиться? Вот пример: #include <stdio.h> FILE *f; int l_current,l_count,result,res; char s[30]; char c; int main() { f = fopen("datafile.dat","r"); l_count = 8; l_current = 3; result = fseek(f,l_count,l_current); printf("\n%d\n",result); res = ftell(f); printf("\n%d\n",res); fclose(f); return 0; } |
|||
|
||||
| p0s0l |
|
|||
![]() Г-н Посол ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 3668 Регистрация: 13.7.2003 Где: 58°38' с.ш. 4 9°41' в.д. Репутация: 2 Всего: 112 |
fromwhere:
SEEK_SET == 0 File beginning SEEK_CUR == 1 Current file pointer position SEEK_END == 2 End-of-file надо делать типа: result = fseek (f, l_count+l_current, 0); -------------------- С уважением, г-н Посол. |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |