Прототип функции setjmp:
int setjmp( jmp_buf environment );
Заголовочный файл
Название | Язык |
---|---|
setjmp.h | С |
csetjmp | С++ |
Описание
Функция setjmp
сохраняет значения окружения для возврата управления программой в точку сохранения. То есть, эта функция принимает аргумент, env
, и наполняет его значениями состояний переменных окружения в этой точке кода. Всё это нужно для того, чтобы, в случае необходимости, можно было восстановить значения переменных окружения в более позднем вызове longjmp
.
Параметры:
- environment
Объект типаjmp_buf
в котором хранится информация о величинах переменных окружения.
Возвращаемое значение
Эта функция может вернуть значение типа int
. Первый вызов функции setjmp
всегда возвращает ноль.
Когда longjmp
вызывается с заполненным параметром environment
, в это же время, функция setjmp
возвращает значение — целое число, которое передается, при вызове функции longjmp
, в качестве второго аргумента.
Пример работы программы
Пример использования данной функции наглядно показан вместе с функцией longjmp.