|
|
|
fflush не работает !!! fwrite и fread с одним файлом, поочередно, в одном потоке
|
|||
|---|---|---|---|
|
#18+
Подсобите пожалуйста! fflush не работает Выполняю в одном потоке, с одним и тем же файловым поток fread и fread, поочередно. Записываются, но не считываются данные. Вот пример кода: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. Если после записи, перед чтением закрыть и открыть файл - всё ок ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.10.2013, 08:03:55 |
|
||
|
fflush не работает !!! fwrite и fread с одним файлом, поочередно, в одном потоке
|
|||
|---|---|---|---|
|
#18+
"wb+" и fseek вместо fflush ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.10.2013, 08:35:10 |
|
||
|
fflush не работает !!! fwrite и fread с одним файлом, поочередно, в одном потоке
|
|||
|---|---|---|---|
|
#18+
m_Sla"wb+" и fseek вместо fflush fseek ВМЕСТЕ с fflush, после. (Хотя, да, в общем, flush не нужен, поскольку доступ идёт через один и тот же файловый дескриптор. Но может он нужен для ещё каких-то целей). После записи указатель файла передвигается за последний записанный байт. Попытка чтения приведёт к тому, что будут пытаться читаться данные за концом файла. Надо делать fseek на начало файла. Кстати, STD-функции потоков имеют ровно обратную особенность -- там указатели чтения и записи в файл разные. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.10.2013, 12:36:39 |
|
||
|
|

start [/forum/topic.php?fid=57&fpage=71&tid=2019947]: |
0ms |
get settings: |
7ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
54ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
44ms |
get tp. blocked users: |
2ms |
| others: | 211ms |
| total: | 349ms |

| 0 / 0 |
