![]() |
|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#11 | |
Старожил
Регистрация: 20.04.2008
Сообщений: 5,497
|
![]() Цитата:
что в TStringList без использования capacity что в динамическом массиве с последовательным увеличением размера
программа — запись алгоритма на языке понятном транслятору
|
|
![]() |
![]() |
![]() |
#12 |
Пользователь
Регистрация: 07.05.2023
Сообщений: 12
|
![]()
evg_m,
Привет, не мог бы ты мне по этим моментам больше инфы дать?? Я только изучаю freepascal) |
![]() |
![]() |
![]() |
#13 |
Старожил
Регистрация: 20.04.2008
Сообщений: 5,497
|
![]()
1. частое выделение возрастающих объемов памяти ( с возвратом ) приводит к фрагментации свободной памяти (есть много мелких кусочков, но нет одного большого).
и настанет время, что аппетит (запрос памяти) превысит размер самого большого свободного (out of memory). поэтому всего лучше просить память сразу(один раз) побольше, а потом неиспользованную память можно вернуть (обрезать). если не хватит можно конечно попросить еще, но опять же с новым запасом. 2. выделение памяти достаточно медленное действие, а значит замедляет работу программы.
программа — запись алгоритма на языке понятном транслятору
|
![]() |
![]() |
![]() |
#14 |
Пользователь
Регистрация: 07.05.2023
Сообщений: 12
|
![]() Код:
|
![]() |
![]() |
![]() |
#15 |
Форумчанин
Регистрация: 17.10.2018
Сообщений: 172
|
![]()
Чтоб понять ошибку, надо знать что ожидалось получить. Может у вас всё работает?
Код:
Код:
|
![]() |
![]() |
![]() |
#16 | |
Пользователь
Регистрация: 07.05.2023
Сообщений: 12
|
![]() Цитата:
|
|
![]() |
![]() |
![]() |
#17 |
Пользователь
Регистрация: 07.05.2023
Сообщений: 12
|
![]()
Всем привет! Ребята может кто даст инфы, хочу сделать проверки в своей программе:
Открылся файл Существует ли файл Не равен ли файл 0 байт Все файлы тхт Вот у меня такой вопрос, если срабатывает какое то условие при проверке вышеперечисленных пунктов, как сделать так что бы программа не останавливала работу а просто пропускала этот файл ( т.е начинала читать следующий файл) может кто то даст пример кода. |
![]() |
![]() |
![]() |
#18 |
Форумчанин
Регистрация: 17.10.2018
Сообщений: 172
|
![]()
Если входной файл открыть в исключительном режиме - это значит ни одна другая программа его не держит открытым.
Остальные проверки банальны. Код:
|
![]() |
![]() |
![]() |
#19 | |
Пользователь
Регистрация: 07.05.2023
Сообщений: 12
|
![]() Цитата:
Код:
|
|
![]() |
![]() |
![]() |
#20 | ||
Форумчанин
Регистрация: 17.10.2018
Сообщений: 172
|
![]()
Вы же сами просили проверку четырёх условий:
Цитата:
Набор команд для работы с файлами:Assign, Reset, Rewrite, BlockRead, BlockWrite, Read, Readln, Write, WriteLn, Close, IOResult тянется ещё с древних времён для однозадачных ОС (ДОСа). В многозадачных (Linux, Windows, ...) файл может быть открыт несколькими программами одновременно. И пока вы будете читать, данные могут быть переписаны. Поэтому надо использовать команды работы с файлами с поддержкой прав доступа. Потоки данных TFileStream это поддерживают — "всем запретить запись, пока я читаю". В вашем случае интенсивной работы нет и хватит обойтись без прав доступа. Цитата:
Код:
|
||
![]() |
![]() |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Парни помогите плиз,очень надо | zayai | Паскаль, Turbo Pascal, PascalABC.NET | 2 | 13.01.2009 20:39 |