Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
230401_MU_-_Osnovy_algoritmizatsii_i_programmir...docx
Скачиваний:
12
Добавлен:
01.07.2025
Размер:
1 Мб
Скачать
☆

Ошибки ввода-вывода

Если один из операторов компилировался с директивой {$I+}, то ошибка ввода-вывода приводит к прекращению выполнения программы. В состоянии {$I-} программа продолжает выполняться, а ошибка возвращается функцией IORESULT.

100. Disk read error (Ошибка чтения с виска). Генерируется процедурой READ в типизированном файле в случае, если Вы пытаетесь осуществить считывание из полностью прочитанного файла.

101. Disk write error (Ошибка записи на диск). Ошибка генерируется процедурами CLOSE, WRITE, WRITELN, FLUSH в случае, если диск заполнен.

102. File not assigned (Файлунеприсвоеноимя).Ошибка генерируется процедурами RESET, REWRITE, APPEND, RENAME и ERASE в случае, если файловой переменной не было присвоено имя файла с помощью обращения к процедуре ASSIGN.

103. File not open (Файлнеоткрыт).Ошибкагенерируетсяпроцедурами CLOSE, READ, WHITE, SEEK, EOF, FILEPOS, F1LESIZE, FLUSH, BLOCKHEAD, BLOCKWR1TE вслучае, еслифайлнеоткрыт.

104. File not open for input (Файлнеоткрытдляввода). Ошибка генерируется процедурами READ, READLN, EOF, EOLN, SEEKEOF или SEEKEOLN в текстовом файле в случае, если файл не открыт для ввода.

105. File not open for output (Файл не открыт для вывода). Ошибка генерируется процедурами WRITE или WR1TELN в текстовом файле в случае, если файл не открыт для вывода.

106. Invalid numeric format (Неверный числовой формат). Генерируется процедурами READ или READLN в случае, если числовое значение, считанное из текстового файла, не соответствует правильному числовому формату.

Критические ошибки

150. Disk is write protected (Диск защищен от записи).

151. Unknown unit (Неизвестный модуль).

152. Drive not ready (Дисковод находится в состоянии “не готов”).

153. Unknown command (Неопознанная команда).

154. CRC error in data (Ошибка в исходных данных).

155. Bad drive requiest structure length (При обращении к диску указана неверная длина структуры).

156. Disk seek error (Ошибка при операции установки головок на диске).

157. Unknown media type (Неизвестный тип носителя).

158. Sector not found (Сектор не найден).

159. Printer out of paper (Кончилась бумага на принтере).

160. Device write fault (Ошибка при записи на устройство).

161. Device read fault (Ошибка при чтении с устройства).

162. Hardware failure (Сбой аппаратуры).

Фатальные ошибки

Эти ошибки всегда приводят к немедленной остановке программы.

200. Division by zero (Деление на ноль).

201. Range check error (Ошибка при проверке границ). Ошибка генерируется операторами, скомпилированными в состоянии {$R+}, при возникновении одной из следующих ситуаций:

  • индексное выражение массива находилось вне допустимого диапазона;

  • была осуществлена попытка присвоить переменной значение, находящееся вне диапазона переменной;

  • была осуществлена попытка передать значение, находящееся вне допустимого диапазона, а качестве параметра процедуре или функции.

202. Stack overflow error (Переполнение стека) Эта ошибка генерируется на входе в процедуру или функцию, скомпилированную в режиме {$S+}, случае, если нет достаточной области для размещения локальных переменных подпрограммы. Увеличьте размер стека, используя директиву компилятора {$М}

203. Heap overflow error (Переполнение кучи). Эта ошибка генерируется процедурами NEW или GETMEM в случае, если в куче нет свободной памяти требуемого размера.

204. Invalid pointer operation (Недействительная операция с указателем). Эта ошибка генерируется процедурами DISPOSE или FREEMEM в случае, когда указатель имеет значение NIL или указывает на адрес, лежащий за пределами динамически распределяемой области памяти.

205. Floating point overflow (Переполнение при операции с плавающей запятой). В результате выполнения операции с плавающей запятой получено слишком большое вещественное число.

206. Floating point underflow (Исчезновение порядка при операции с плавающей запятой). Эта ошибка генерируется только в том случае, если используется сопроцессор 8087/80287/80387 с управляющим словом, которое демаскирует ошибку исчезновения порядка. По умолчанию исчезновение порядка приводит к возвращению результата, равного нулю.

207. Invalid floating point operation (Недопустимая операция с плавающей запятой). Возможные причины сообщения:

  • аргумент функций TRUNC или ROUND не может быть преобразован в целое число, находящееся внутри диапазона типа LONGINT (от -2147483648 до -12147483647);

  • отрицательный аргумент функции SQRT (извлечение квадратного корня);

  • аргумент функции LN (логарифм) равен нулю или имеет отрицательное значение;

  • произошло переполнение стека сопроцессора.

208. Overlay manager not installed (He установлена подсистема управления оверлеем). Ваша программа вызывает оверлейную процедуру или функцию, а подсистема управления оверлеем не инициирована. Вероятнее всего, в программе отсутствует обращение к процедуре OVRINIT или обращение к этой процедуре завершилось с ошибкой. Нужно иметь в виду, что если в каком-либо из оверлейных модулей содержится раздел инициации, то в программе необходимо создать дополнительный или использовать имеющийся неоверлейный модуль, вызывающий процедуру OVRINIT в своем разделе инициализации, и указать этот модуль в предложении USES перед любым из оверлейных модулей.

209. Overlay file read error (Ошибка чтения оверлейного файла). Ошибка чтения произошла, когда подсистема управления оверлеем пыталась считать оверлейный модуль из оверлейного файла.

210. Object not initialized (He инициированобъект).Вы обращаетесь к виртуальному правилу применительно к неинициированному объекту (до вызова конструктора).

211. Call to abstract method (Вызовабстрактногоправила). Эта ошибка генерируется правилом ABSTRACT модуля OBJECT при работе в среде Turbo Vision в случае обращения к абстрактному правилу, т.е. к виртуальному правилу, которое разработано специально для его замены в объектах-потомках.

212. Stream registration errata (Ошибка в регистрируемом потоке). Эта ошибка оперируется правилом REGISTERTYPE модуля OBJECT при работе в среде Turbo Vision в случае возникновения одной из следующих ошибок:

  • запись регистрируемого потока не содержит сегмента данных;

  • поле OBJTYPE записи регистрируемого потока нулевое;

  • указанный гип уже был зарегистрирован;

  • существует другой тип с таким же полем OBJTYPE.

213. Collection index out of range (Набираемый индекс выходит из границ диапазона). Индекс, передаваемый объекту TCOLLECTION при работе в среде Turbo Vision, выходит за границы диапазона.

214. Collection overflow error (Переполнение коллекции). Эта ошибка генерируется объектом TCOLLECTION при работе в среде Turbo Vision в случае, если делается попытка добавить элемент к коллекции, которую нельзя расширять.