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:01, 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);