Difference between revisions of "Libchecker:fatal CF"
From EjudgeWiki
Line 1: | Line 1: | ||
− | Вернуться к функциям [[Libchecker: | + | Вернуться к функциям [[Libchecker:Завершение работы|завершения работы]]. |
void fatal_CF(char const *format, ...); | void fatal_CF(char const *format, ...); |
Revision as of 18:02, 17 December 2006
Вернуться к функциям завершения работы.
void fatal_CF(char const *format, ...);
Данная функция выводит диагностическое сообщение на стандартный поток ошибок затем завершает работу проверяющей программы с кодом завершения, соответствующим внутренней ошибке проверки. Данная функция никогда не возвращает управление в проверяющую программу.
Аргумент format задаёт спецификацию форматного преобразования функции printf для диагностического сообщения. Символ перехода на новую строку \n добавляется при выводе автоматически, поэтому он не требуется в конце диагностического сообщения.
Функция fatal_CF должна использоваться для завершения работы проверяющей программы в следующих случаях:
- входные данные некорректны или не удовлетворяют ограничениям задачи
- эталонный ответ некорректен
- при работе проверяющей программы возникла ошибка, которая не позволяет проверить правильность выходного файла тестируемой программы (например, не хватило динамической памяти)
Пример:
fatal_CF("x must be > 1 in input, but got %d", x);