C语言有一个叫做setjmp.h的标准库提供了两个函数,可以进行跨函数跳转,不过C51支持不支持就不清楚了。。。如果你想这么做,可以混用汇编,使用JMP指令,不过不建议在子函数之间跳转,有可能会出错,JMP是没有现成保护的纯跳转,你应该注意你程序碰见ret指令返回时的位置。。。
最简单的一个事就是比如函数1的返回值是个2字节的数,函数2的返回值是个4字节的数,当你从第一个子程序跳到第二个,其实主函数是没有调用函数2,当函数2返回时,他会认为函数返回值仍然是2字节,这个时候就出错了,不同的函数的参数表也是不同的,这也一样会导致程序出错。。。所以这种跳转只是蹩脚适合无参数无返回值的纯过程。。。。
goto语句只能用到同一个函数中,不能跳函数的
不只是在单片机上,我在电脑上都不行
有提到了奥地利一点点,虽然并不