Longjmp

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску

longjmp — функция в языках программирования Си (язык программирования) и C++. Переход к заранее сохраненному состоянию.

Синтаксис[править | править код]

#include <setjmp.h>

void longjmp(jmp_buf env, int val);

Описание[править | править код]

Функция обычно используется для организации механизма исключений. Функция longjmp() восстанавливает состояние программы, сохраненное ранее с помощью функции setjmp(). После вызова longjmp() выполнение программы продолжается, будто бы функция setjmp() просто вернула значение val. Аргумент val нельзя задать равным нулю. Если аргумент val задан равным нулю, ему автоматически присваивается значение 1.

Возвращаемое значение[править | править код]

Функция longjmp никогда не возвращает управление.

См. также[править | править код]