raise

Функция            Посылает программный сигнал выполняемой программе.

Синтаксис          #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.

Смотрите также      abort signal

Пример:

#include
int main()
{
int a,b;

a = 10;
b = 0;
if(b==0)

/* предварить ошибку при делении на 0 */
   raise(SIGFPE);
a = a / b;
return 0;
}