Ctrlbrk
ctrlbrk
Функция Устанавливает программу обработки Ctrl-Break.
Синтаксис #include
void ctrlbrk(int(*handler)(void));
Файл, содержащий dos.h прототип
Описание Функция ctrlbrk устанавливает новую функцию обра- ботки прерываний, адресный указатель которой на- ходится в переменной handler. Вектор прерывания 0x23 модифицируется для вызова названной функции.
Названная функция не может вызываться непосредст- венно. Функция ctrlbrk вызывает программу обра- ботки прерываний системы DOS, которая, в свою очередь, вызывает названную функцию.
Функция обработки прерываний может выполнять лю- бое количество операций и системных вызовов. Дан- ная функция не должна возвращаться непосредствен- но в программу; программа обработки прерывания возвращает 0 для завершения текущей программы, в противном случае программа продолжает свою рабо- ту.
Возвращаемое Функция ctrlbrk не возвращает никакого значения. значение
Переносимость Функция уникальна для системы DOS.
Смотрите также
Пример:
#include
#include
#define ABORT 0 int c_break(void) { print("Нажато Control-Break. Выполнение программы завершается.\n"); return(ABORT); }
main() { ctrlbrk(c_break); for (;;) { printf("Цикл ...\n"); } }
Вывод:
Цикл ... Цикл ... Цикл ... ^C Нажато Control-Break. Выполнение программы завершается.
delay
Функция Замораживает выполнение программы на интервал в микросекундах.
Синтаксис #include
void delay (unsigned milliseconds);
Файл, содержащий dos.h прототип
Описание При вызове функции delay выполнение программы приостанавливается на время, определяемое парамет- ром milliseconds. Теперь отпала необходимость в калибровочном вызове delay. delay отсчитывает ин- тервал в миллисекундах.
Возвращаемое Нет. значение
Переносимость Эта функция работает только на компьютерах совмес- тимых с IBM PC.
Смотрите также
Пример:
/* выдает звук с частотой 440 Гц в течение 500 миллисекунд */
#include
int main(void) { sound(440); delay(500); nosound(); return 0; }