Difference between revisions of "п╓я┐п╫п╨я├п╦я▐ checker main"
| Line 10: | Line 10: | ||
[[коды завершения проверяющей программы|код завершения проверяющей программы]]. | [[коды завершения проверяющей программы|код завершения проверяющей программы]]. | ||
| − | Разбор аргументов командной строки проверяющей программы выполняется при инициализации проверяющей программы ещё до запуска checker_main, поэтому проверяющая программа может сразу же пользоваться глобальными переменными и функциями библиотеки libchecker. | + | Разбор [[параметры командной строки проверяющей программы|аргументов командной строки]] проверяющей программы выполняется при инициализации проверяющей программы ещё до запуска checker_main, поэтому проверяющая программа может сразу же пользоваться глобальными переменными и функциями библиотеки libchecker. |
| + | |||
| + | Для завершения работы проверяющей программы рекомендуется использовать функции библиотеки libchecker | ||
| + | [[checker_OK]], [[fatal]], [[fatal_CF]], [[fatal_PE]], [[fatal_WA]], [[fatal_read]]. Все эти функции | ||
| + | вызывают стандартную функцию exit с соответствующим кодом завершения, то есть после их вызова управление | ||
| + | никогда не возвращается в проверяющую программу. | ||
| + | |||
| + | Функция checker_main в типичной случае может выглядеть следующим образом: | ||
| + | int checker_main(int argc, char **argv) | ||
| + | { | ||
| + | // код проверяющей программы, который вызывает функции семейства fatal* в случае обнаружения ошибки | ||
| + | checker_OK(); | ||
| + | } | ||
Latest revision as of 09:22, 4 December 2006
Вернуться на страницу библиотеки libchecker.
Функция checker_main в проверяющей программе играет роль функции main в обычной программе на C. После инициализации проверяющей программы управление передаётся на эту функцию.
Функция checker_main должна удовлетворять следующему прототипу:
int checker_main(int argc, char **argv);
Параметры argc и argv содержат количество аргументов командной строки и сами аргументы (точно так же, как и для функции main). Возвращаемое значение функции checker_main — это код завершения проверяющей программы.
Разбор аргументов командной строки проверяющей программы выполняется при инициализации проверяющей программы ещё до запуска checker_main, поэтому проверяющая программа может сразу же пользоваться глобальными переменными и функциями библиотеки libchecker.
Для завершения работы проверяющей программы рекомендуется использовать функции библиотеки libchecker checker_OK, fatal, fatal_CF, fatal_PE, fatal_WA, fatal_read. Все эти функции вызывают стандартную функцию exit с соответствующим кодом завершения, то есть после их вызова управление никогда не возвращается в проверяющую программу.
Функция checker_main в типичной случае может выглядеть следующим образом:
int checker_main(int argc, char **argv)
{
// код проверяющей программы, который вызывает функции семейства fatal* в случае обнаружения ошибки
checker_OK();
}