有人可以告诉我是否可以在同一个C文件中的不同函数中使用相同的goto标签?
解释我面临的问题:
function1()
{
...
goto label
...
label:
...
}
function2()
{
...
goto label;
...
label:
...
}
Run Code Online (Sandbox Code Playgroud)
现在发生的事情是标签之后的代码被用于清理malloc'ed'数据.整个事情在function2中崩溃了.我打印出了mem.免费和相同的位置被多次释放.这是因为所有的冒险?这是goto语句的有效使用吗?
Som*_*ude 23
标签是本地的,因此您可以在多个功能中使用相同的标签.
关于你是否应该使用的问题goto是一个不同的问题,而且是一个不容易回答的问题.总之,不要使用goto.但是就像所有事情一样(特别是在编程方面),有些例外goto可能有用.