Главная страница


ru.linux

 
 - RU.LINUX ---------------------------------------------------------------------
 From : John Lepikhin                        2:5070/156     23 Apr 2003  00:50:42
 To : All
 Subject : mingw32: баги?
 -------------------------------------------------------------------------------- 
 
 
 Есть простейший код:
 =====================
 #include <stdio.h>
 #include <stdlib.h>
 
 int main () {
     long c, i;
     FILE *file;
 
     file=fopen("in.fns","r");
     fseek(file, 1528395, SEEK_SET);
     i=0;
     while ((c=fgetc(file)) != EOF) {
         printf ("c=%li, i=%li, fpos=%li\n", c, i, ftell(file));
         i++;
     }
 
     return 0;
 }
 =====================
 
 Открываемый файл более 6Mb. Вывод EXE-файла выглядит полным бредом:
 
 [...]
 c=211, i=64, fpos=1532044
 c=163, i=65, fpos=1532045
 c=121, i=66, fpos=1532491
 
 >   Оп-па, fpos (позиция в файле) перескочил!
 
 c=1, i=67, fpos=1536076
 
 >   И опять!
 
 c=137, i=68, fpos=1536077
 
 Аналогичный эффект, если заменить fgetc на fread. Пытался каждый раз
 перед чтением позицию принудительно устанавливать - ему по параллели.
 
 С этим в морг, или есть другой выход из клиники?
 
 Версии:
 mingw32         2.95.3.7-3
 mingw32-runtime 1.2-1
 
 Опции компиляции минимальны: "-W -Wall"
 -- 
 ... [болотный сисоп] {злокачественные словесные новообразования}
 --- Gnus/5.0808 (Gnus v5.8.8) XEmacs/21.4 (Common Lisp)
  * Origin: Karacidum (2:5070/156.0)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 mingw32: баги?   John Lepikhin   23 Apr 2003 00:50:42 
Архивное /ru.linux/3671379e2542f.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional