Код ошибки

Код ошибки

Код ошибки (англ. Error code) в программировании, — это номер (или сочетания буквы и номера), который соответствует конкретной проблеме в работе программы. Коды ошибок используются для идентификации неправильной работы аппаратного и программного обеспечения, неверного ввода данных пользователем без обработки возникающей при этом исключительной ситуации в коде программы, хотя иногда коды ошибок используются в сочетании с обработкой исключений. Коды ошибок не следует путать с кодами возврата, хотя они часто используются вместе при обработке ошибок. Одни из самых серьёзных кодов ошибок, которые могут встретить пользователи — это коды «Синего экрана смерти» операционной системы Microsoft Windows.

Примеры

В языках программирования, в которых отсутствует механизм обработки исключений (например, в языке С), коды ошибок часто хранятся как глобальные переменные с именами такими как errno. Коды ошибок обычно обозначаются номерами, каждый из которых идентифицирует определенную исключительную ситуацию. В приложении, которое использует коды ошибок, каждая функция обычно определяет один код возврата, который указывает на ошибку общего значения. Получив этот обобщенный код возврата программист может проверить значение, находящееся в глобальном коде ошибки для определения условий, которые привели к возникновению исключительной ситуации. Например, при неудачной попытке открыть файл, функция может установить глобальный код ошибки, указывающий на причину ошибки и возвратить некорректный указатель на файл. Следующий пример показывает как код ошибки может быть использован для описания причины ошибки:

/* попытка открыть файл на чтение */
FILE *fp = fopen("filename", "r");  
/* если файл не может быть открыт, напечатать номер ошибки и сообщение*/
if (fp == NULL){  
    printf("Cannot open file, error %d, %s\n", errno, strerror(errno));
    /* Альтернативно можно использовать perror(), который обеспечивает ту же функциональность */
    perror("Cannot open file");
}

Так как обычно коды ошибок — глобальные переменные, то они могут быть доступны из любой точки программы. Так же как и с другими глобальными переменными, эта простота доступа может быть источником проблем в многопоточной среде. В связи с тем, что в глобальные переменные могут записывать одновременно несколько потоков, это может привести к состоянию гонки. Для решения этой проблемы, POSIX определяет переменную errno как переменную локальную к потоку (thread-local variable).

См. также

Ссылки


Wikimedia Foundation. 2010.

Игры ⚽ Поможем решить контрольную работу

Полезное


Смотреть что такое "Код ошибки" в других словарях:

  • код ошибки — В CANopen определены стандартные коды ошибок, передаваемые в составе срочного сообщения. [http://can cia.com/fileadmin/cia/pdfs/CANdictionary v2 ru.pdf] Тематики сети вычислительные EN error code …   Справочник технического переводчика

  • неопределенный код ошибки — — [Л.Г.Суменко. Англо русский словарь по информационным технологиям. М.: ГП ЦНИИС, 2003.] Тематики информационные технологии в целом EN undefined error cod …   Справочник технического переводчика

  • Код ответа — Код ответа, Код причины завершения или Код возврата (в англоязычной литературе также Cause code, Reason code, Status code, Disconnect code и т.д.) в телекоммуникациях цифровой код, сформированный узлом в результате выполнения запроса, который… …   Википедия

  • код с ошибкой — код ошибки — [Л.Г.Суменко. Англо русский словарь по информационным технологиям. М.: ГП ЦНИИС, 2003.] Тематики информационные технологии в целом Синонимы код ошибки EN error code …   Справочник технического переводчика

  • Код Рида — Соломона — Коды Рида Соломона недвоичные циклические коды, позволяющие исправлять ошибки в блоках данных. Элементами кодового вектора являются не биты, а группы битов (блоки). Очень распространены коды Рида Соломона, работающие с байтами (октетами). Код… …   Википедия

  • Код Хемминга — Коды Хемминга наиболее известные и, вероятно, первые из самоконтролирующихся и самокорректирующихся кодов. Построены они применительно к двоичной системе счисления. Содержание 1 История 2 Самоконтролирующиеся коды …   Википедия

  • КОД С ИСПРАВЛЕНИЕМ АРИФМЕТИЧЕСКИХ ОШИБОК — код, исправляющий арифметические ошибки, код, предназначенный для контроля работы сумматора. При сложении чисел, представленных в двоичной системе счисления, одиночный сбой в работе сумматора приводит, как правило, к изменению результата на нек… …   Математическая энциклопедия

  • КОД С ИСПРАВЛЕНИЕМ ОШИБОК — код, корректирующий ошибки, множество сообщений, предназначенных для передачи по каналу связи с шумами, обладающее тем свойством, что окрестность ошибок каждого сообщения (т. е. совокупность искаженных вариантов этого сообщения) не пересекается с …   Математическая энциклопедия

  • Код Боуза — Чоудхури — Хоквингема — Коды Боуза  Чоудхури  Хоквингхема (БЧХ коды)  в теории кодирования это широкий класс циклических кодов, применяемых для защиты информации от ошибок (см. Обнаружение и исправление ошибок). Отличается возможностью построения кода с… …   Википедия

  • Код с малой плотностью проверок на чётность — (LDPC код от англ. Low density parity check code, LDPC code, низкоплотностный код)  используемый в передаче информации код, частный случай блокового линейного кода с проверкой чётности. Особенностью является малая плотность значимых… …   Википедия


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»