setjmp

프로그램의 현재 상태를 저장합니다.

int setjmp(
   jmp_buf env 
);

매개 변수

  • env
    환경에 저장 하는 데 사용 되는 변수입니다.

반환 값

스택 환경 저장 한 후 0 반환 합니다.경우 setjmp 결과로 반환는 longjmp 호출에서 반환의 value 인수를 longjmp, 경우는 value 인수를 longjmp 0으로, setjmp 1을 반환 합니다.없음 오류가 반환이 됩니다.

설명

setjmp 함수는 스택 환경에서, 그 후에 사용 하 여 복원할 수 있습니다 저장 longjmp.함께 사용 하면 setjmp 및 longjmp 비-로컬에서 실행할 수 있습니다 goto.이들은 일반적으로 일반 전화를 사용 하지 않고 실행 제어 복구 하거나 오류 처리 코드를 이전에 호출된 된 루틴에 전달 하는 데 사용 됩니다 또는 규칙을 반환 합니다.

호출을 setjmp 스택의 현재 환경에서 저장 env.대 한 후속 호출을 longjmp 저장 된 환경을 복원 하 고 해당 바로 후 제어 지점으로 반환 setjmp 를 호출 합니다.갖고 있던 때 값 컨트롤을 받는 루틴을 액세스할 수 있는 모든 변수 (레지스터 변수) 제외 포함 longjmp 가 호출 되었습니다.

사용할 수 없는 setjmp 관리 코드에 네이티브 코드에서 이동할 수 있습니다.

편지지   setjmp및 longjmp C++ 개체 의미를 지원 하지 않습니다.C + + 프로그램에서 C++ 예외 처리 메커니즘을 사용 합니다.

자세한 내용은 longjmp 및 setjmp를 사용 하 여.

요구 사항

루틴

필수 헤더

setjmp

<setjmp.h>

추가 호환성 정보를 참조 하십시오. 호환성 소개에서 합니다.

예제

예제를 보려면 _fpreset.

해당 .NET Framework 항목

해당 사항 없음. 표준 C 함수를 호출할 수 있습니다 PInvoke. 자세한 내용은 플랫폼 호출 예제.

참고 항목

참조

프로세스 및 환경 제어

longjmp

_setjmp3