Программирование на C и C++

Онлайн справочник программиста на C и C++

ctrlbrk

void ctrlbrk(int (*fptr)(void))

Прототип: 
Описание: 

Эта функция не определе­на стандартом ANSI С.

Функция ctrlbrk() используется в качестве замены обработчика нажатия клавиш CTRL-BRK на новый обработчик, на который указывает fptr. Эта последняя процедура будет вызываться всякий раз при нажатии клавиш CTRL-BRK. Нажатие CTRL-BRK генерирует прерывание 0x23.

Как только программа закончит исполнение, Borland С++ автоматически восстановит старый обработчик нажатия клавиш CTRL-BRK.

Если новая процедура возвращает 0, то программа будет завершена. В противном случае ис­полнение программы будет продолжаться.

Пример: 
Следующая программа выводит числа от 0 до 31,999 до тех пор, пока не будут нажаты клавиши CTRL-BRK, что вызывает завершение работы программы.
#include <stdio.h>
#include <dos.h>
int break_handler(void);
int main(void)
{
register int i;
ctrlbrk(break_handler);
for (i=0; i<32000; i++) printf("%d ", i);
return 0;
}

break_handler(void)
{
printf("This is the new break handler.");
return 0;
}