如何使用 setjmp 和 longjmp 去替换这段代码中的 goto:
#include<iostream>
using namespace std;
int flag=1;
void doing()
{
switch(flag)
{
case 1:
{
goto A;
break;
}
case 2:
{
goto B;
break;
}
}
return;
}
int main()
{
doing();
A:
cout<<"114514"<<endl;
B:
cout<<"1919810"<<endl;
return 0;
}
我知道 goto 不可跨函数使用,这段代码编译会报错,所以我想知道如何去替换使其编译通过。
(看不懂百科里面的 setjmp 和 longjmp 应该怎么用/kk)