1. Заголовок или название темы должно быть информативным !
2. Все тексты фрагментов программ должны помещаться в теги [code] ... [/code] или [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ" и используйте ПОИСК !
4. НЕ используйте форум для личного общения!
5. Самое главное - это раздел теоретический, т.е. никаких задач и программ (за исключением небольших фрагментов) - для этого есть отдельный раздел!
| Altair |
13.11.2004 7:20
Сообщение
#1
|
![]() Ищущий истину ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 4 824 Пол: Мужской Реальное имя: Олег Репутация: 45 |
1. Зачем система при работе с текстовыми файлами, использует два одинаковых буфера?
(Я проверил, они всегда одинаковы.) 2. Зачем один буфер она размещает в стеке, а другой в куче? 3. На что указывают 4 адреса в записе файловой переменной? вот такие: OpenFunc: Pointer; На процедуры? Что для каждого файла выходит есть в памяти своя процедура закрытия, и т.п. ? ЗЫ: мне кажется что под текстовыми файлами скрываются обычые, но нас хорошо обманывают, а именно - ИМХО: при открытии файла как текстовго, система на самом деле его читает как обычный, испольуя процедуры blockread, blockwrite (скоростные), и читает все эту гадость, а именно 127 байт в буфер. А при чтении строки из файла, на самом деле читается она не из файла а из буфера (ну а буфер как только мы к концу его подобрались обновляется). ..... хе-хе, ловко, ловко ... :yes: Все было бы в моей теории хорошо, если бы не наличие второго буфера... 4. Что за буфер в памяти есть для файлов (всех) под именем UserData (всегда он почему-то заполне нулями) ЗЫ: Забыл сказать, я имею ввиду, что тип файловойпеременной file таков: (вернее text) TextBuf = array[0..127] of Char; -------------------- Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С) |
![]() ![]() |
| Altair |
13.11.2004 17:57
Сообщение
#2
|
![]() Ищущий истину ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 4 824 Пол: Мужской Реальное имя: Олег Репутация: 45 |
Цитата Лично я использовал буфер, чтобы не эксплуатировать головки дисковода Все правильно, но я с таким-же успехом могу прочитать просто файл типа FILE например 16 кб и не мучаться с текстовыми .. вобщем не оправданно это -------------------- Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С) |
Altair Текстовые файлы. Буфер текстового файла. 13.11.2004 7:20
volvo Oleg_Z
1.
Ты имеешь в виду эти 2 переменные?
... 13.11.2004 13:21
Altair Хм.. а вот с буфером странно все-равно, если задат... 13.11.2004 16:35
volvo
При обращении к физическому файлу на диске максим... 13.11.2004 17:14
Altair
хех, так это все ясно, но всеведь читаю текстовый... 13.11.2004 17:35
volvo Так читая по строкам, ты не читаешь с диска - чита... 13.11.2004 17:43
volvo Oleg_Z
Напиши мне аналогичный код, используя бес... 13.11.2004 18:12
Altair
нет, ясно что будет менее наглядно и красиво ... ... 13.11.2004 19:32
Digitalator Смотря для чего - для всевозможных файлов с настро... 13.11.2004 20:49![]() ![]() |
|
Текстовая версия | 13.12.2025 13:21 |