假设我有两个C源文件A.c,B.c.
A.c包含一个标签,我只想从模块B.c中找到它。
A.c只包含一个函数:
int f() {
// some commands
aLabel:
// some more commands
return 1;
}
B.c也只包含一个函数:
extern aLabel;
int g() {
// do some stuff
goto aLabel;
}
显然,这两个文件链接在一起,形成一个最终的.exe文件。
如何跳转到外部标签?
提前谢谢。
我们有一个标签:
LABEL:
//Do something.
我们有一个函数。我们希望将label作为参数传递给此函数(否则我们无法访问函数中的标签),并且在某些情况下,我们希望跳过此标签。有可能吗?
我给出一个例子(伪代码)来说明:
GameMenu: //This part will be executed when program runs
//Go in a loop and continue until user press to [ENTER] key
while(Game.running) //Main loop for game
{
Game.setKey(
大家好,有没有人能帮我走出困境,我正在寻找一个像汇编一样实现JMP (跳转)指令的指导者。我发现可以使用Flex/Bison的goto功能,但我真的不知道该怎么做。有没有人知道。我非常感谢你的帮助。谢谢。
下面是一个它看起来是什么样子的例子。在JMP讲师的帮助下,他找到了标签L1。
:L1
IF FLAG AND X"0001"
EVT 23;
ELSE
WAIT 500 ms;
JMP L1;
END IF;
我有一个疑问,为什么gcc使用&&来访问标签,为什么它不能直接访问与标签相关的位置的值。如以下代码片段所示:
void main()
{
static void* loc = &&locA;
printf("locA : %p\n", locA); //will give error
printf("loc : %p\n",loc); //will not give error
//statments X
locA :
//statements Y
}
我想通过检查同一方法中的if条件来跳过某些代码行。我使用了goto语句,但它显示“无法从这个goto语句跳转到标签”。有没有其他方法可以让我跳过代码?我所做的是..。
if(condition)
goto skipped;
//code to skip
//code to skip
skipped:
//code to execute