C - 转到位于外部文件中的标签

时间:2015-08-30 09:29:22

标签: c label extern

假设我有2个C源文件B.cA.c

B.c包含一个标签,我只希望来自模块A.c

int f() { // some commands aLabel: // some more commands return 1; } 只包含1个函数:

B.c

extern aLabel; int g() { // do some stuff goto aLabel; } 也只包含1个函数:

BEGIN
  DBMS_UTILITY.COMPILE_SCHEMA(schema => '<your schema>', compile_all => FALSE, reuse_settings => TRUE);
END;

显然,这两个文件被链接到最终的.exe文件。

如何跳转到外部标签?

提前致谢。

1 个答案:

答案 0 :(得分:3)

goto始终是函数的本地函数,不能使用goto在函数之间跳转。要进行非本地跳转,请查看setjmp / longjmp C函数。