Коды завершения проверяющей программы
Проверяющая программа информирует тестирующую систему ejudge о вердикте проверки с помощью кода завершения. Допустимые коды завершения перечилены ниже:
- 0 - OK, правильный ответ
- 1 - WA (с версии 2.3.21)
- 2 - PE (с версии 2.3.21)
- 4 - PE, presentation error, ошибка неправильного формата результата
- 5 - WA, wrong answer, неправильный ответ
Любые другие коды завершения программы, равно как и завершение проверяющей программы из-за сигнала, рассматриваются как ошибка в работе самой проверяющей программы.
В программах на C или C++ завершить работу программы с указанным кодом завершения можно либо вызвав стандартную функцию exit, либо вернув код завершения как возвращаемое значение из функции main с помощью оператора return.
Программы на Pascal или Delphi завершаются с кодом 0 по умолчанию. Либо можно вызвать процедуру halt, передав ей нужный код завершения.
Программы, использующие библиотеку libchecker, могут использовать функции checker_OK, fatal_PE или fatal_WA.
Программы, использующие библиотеку testlib, могут использовать процедуру quit.
Начиная с версии 2.3.21 в качестве кода возврата проверяющих программ допускается 1 (WA) и 2 (PE).