Функция Посылает программный сигнал выполняемой программе.
Синтаксис #include
int raise(int sig);
Файл, содержащий signal.h
прототип
Описание raise посылает сигнал sig программе. Если програм-
ма загрузила процедуру обработки сигнала, для
сигнала sig, то запускается данная процедура. Ес-
ли процедуры обработки для данного сигнала нет,
то производятся действия, определенные для данно-
го сигнала по умолчанию.
Имеются следующие типы сигналов, определенные в
файле signal.h:
--------------------------------------------------
Сигнал Значение
--------------------------------------------------
SIGABRT Ненормальное завершение (*)
SIGFPE Неверная операция над числами с
плавающей точкой
SIGILL Неверная инструкция (#)
SIGINT Прерывание по Ctrl_Break.
SIGSEGV Неверный доступ к памяти (#)
SIGTERM Запрос на завершение программы (*)
--------------------------------------------------
Сигналы помеченные (*) не генерируются DOS или
Turbo C++, во время нормальной работы. Однако они
могут генерироваться с помощью функции raise.
Сигналя помеченные (#) не могут генерироваться
асинхронно процессорами 8088 или 8086, однако мо-
гут генерироваться некоторыми другими процессора-
ми (смотри signal).
Возвращаемое При успешном завершении raise возвращает 0, в про-
значение тивном случае ненулевое значение.
Переносимость raise поддерживается системами UNIX и стандартом
ANSI C.
Смотрите также abortsignal
Пример:
#include
int main()
{
int a,b;
a = 10;
b = 0;
if(b==0)
/* предварить ошибку при делении на 0 */
raise(SIGFPE);
a = a / b;
return 0;
}