Итак, я работаю над этим кодом для класса, и у меня мало опыта работы с обработчиками сигналов. У меня 95% моего кода сделано, однако я борюсь с этим битом.Установка обработчиков сигналов для переменных, которые определены в файле заголовка в C
Это то, о чем просит профессор по этому заданию.
Тогда основной() необходимо установить обработчик 4 сигнала:
Обработчик TIME_OVER_SIGNAL объявляет, что время и устанавливает shouldRun 0.
Обработчик WIN_SIGNAL объявляет о том, что пользователь выиграл и sets shouldRun to 0.
Обработчик для CORRECT_SIGNAL сообщает, что пользователь получил свое последнее предположение правильно.
Обработчик для INCORRECT_SIGNAL сообщает, что пользователь получил последнее предположение неправильно и должен начать с самого начала.
ПРИМЕЧАНИЕ. Возможно, вы можете сделать один и тот же обработчик как CORRECT_SIGNAL, так и INCORRECT_SIGNAL.
Мне не удалось найти какие-либо примеры в Интернете, похожие на это, чтобы направить меня в правильном направлении, что делать.
Это то, что я в основном получил из объяснения, и я знаю, что это, вероятно, не соответствует значению ... Как мне это сделать, чтобы они выдавали конкретное сообщение, как его спрашивали? Единственными примерами, которые я могу найти в Интернете, являются общие аварийные сигналы, sigChld или возможность Ctrl^C из запущенной программы.
void timeOverSignalHandler(int sigINT)
{
printf("Oh no! The time is up!");
shouldRun = 0;
}
Я смущен, какие аргументы должны быть переданы. Я также смущен тем, должен ли я делать что-то другое в обработчике, и когда я вызываю обработчик в основном, я должен иметь выход.
Если кто-нибудь может быть любезным, чтобы вести меня в правильном направлении с этим, я был бы очень признателен за вашу помощь! Любой пример, который был бы подобен этому, был бы замечательным, когда обработчик использовался для вывода определенной фразы пользователю. Не обязательно, чтобы эти конкретные обработчики, которые мне нужно сделать для задания. Это программа на С!
Is It 'c' или' 'C++? Пожалуйста, выберите один. В чем вопрос? –
Это программа на С, мои извинения. –
Вопрос в том, как я могу установить эти обработчики сигналов, которые необходимо установить. Все, что я могу найти в Интернете, поскольку примеры являются стандартными обработчиками сигналов для сигналов тревоги или Ctrl^C'ing из работающей программы. Ничего, что печатает конкретный результат, основанный на данном обстоятельстве, подобном этому. –