В ходе своей работы программист неизбежно сталкивается с ошибками (см. разд. 1.4). Обнаружение ошибок компиляции сопровождается выдачей краткого комментария, позволяющего сравнительно быстро понять причину и исправить синтаксическую ошибку. В отличие от них, ошибочные операции в процессе выполнения программы обычно вызывают сообщение, содержащее числовой код ошибки и адрес ячейки памяти. Для того чтобы облегчить работу с ошибками выполнения, программисту необходимо знать описания их кодов (табл. 1.1).
Таблица 1.1. Коды ошибок выполнения
Код | Описание |
1 | Обращение к несуществующей функции MS-DOS |
2 | Указанный файл не найден при обращении к нему процедур Reset, Append, Rename, Erase |
3 | Указанный путь не найден при попытке его использования процедурами Reset, Rewrite, Append, Rename, Erase, ChDir, MkDir, RmDir |
4 | Число открытых файлов превысило значение, заданное переменной FILES в стартовом файле Config.sys. Источник сообщения: процедуры Reset, Rewrite, Append |
5 | Доступ к файлу запрещен. Причина ошибки может заключаться в попытке открыть файл, имеющий атрибут Read Only ("только для чтения"), как для записи, так и для чтения. Источник ошибки: процедуры Reset, Append, Rewrite, Rename, Erase, MkDir, RmDir, Read, BlockRead, Write, BlockWrite |
6 | Ошибка обработки файла |
12 | Неправильный код доступа к файлу. Возникает, если в процедурах Reset или Append при работе с типизированными и нетипизированными файлами значение параметра FileMode задано неправильно |
15 | Неправильный номер устройства в процедуре GetDir |
16 | Нельзя удалить текущий каталог. Процедура RmDir не может удалить теку¬щий каталог |
17 | При обращении к процедуре Rename сделана попытка присвоить имя, отве¬чающее файлу на другом устройстве |
18 | При обращении к FindFirst или FindNext оказалось, что соответствующих файлов нет |
100 | Попытка чтения из типизированного файла после того, как достигнут при¬знак конца файла |
101 | Ошибка записи на диск (на диске не хватает места) |
102 | Файл не ассоциирован с файловой переменной |
103 | Файл не был открыт при обращении к нему процедур BlockRead, BlockWrite, Eof, Close, FilePos, FileSize, Flush, Read, Write, Seek |
104 | Файл не был открыт для чтения при обращении к нему процедур Eof, EoLn, Read, ReadLn, SeekEof, SeekEoln |
105 | Файл не был открыт для записи при обращении к нему процедур Write И WriteLn |
106 | Неправильный числовой формат (при вводе встретился недопустимый в записи числа символ) |
150 | Диск защищен от записи |
151 | Ошибка драйвера устройства |
152 | Устройство не готово |
154 | Ошибка контроля четности данных |
156 | Ошибка поиска данных на диске |
157 | Неизвестный тип носителя информации |
158 | Не найден сектор |
159 | В принтере нет бумаги |
160 | Ошибка записи на устройство |
161 | Ошибка чтения с устройства |
162 | Сбой оборудования |
200 | Деление на ноль (некорректная арифметическая операция) |
201 | Нарушение диапазона допустимых значений переменной или индекса мас¬сива |
202 | Переполнение стека |
203 | Переполнение динамически распределяемой области памяти |
204 | Неправильная операция с указателем |
205 | Переполнение при выполнении операции с плавающей точкой |
206 | Исчезновение порядка при выполнении операции с плавающей точкой |
207 | Ошибка при выполнении операции с плавающей точкой. Возникает при по¬пытке вычислить значение функций sqrt(x) или 1п(х) из отрицательного значения, в случае когда преобразование вещественного значения в целое не попадает в допустимый интервал значений для типа longint и т. д. |
210 | Объект не инициализирован. Возникает при обращении к виртуальному методу до инициализации объекта конструктора |
215 | Арифметическое переполнение |
216 | Ошибка доступа к памяти |
 предыдущая         меню        вверх         следующая