C语言goto 的使用方法

来源:百度知道 编辑:UC知道 时间:2024/06/11 10:20:41
想知道C语言goto 的使用方法,可以用在什么后面

这个语句最好不要使用,因为它不符合结构化程序的设计思想。

如果要用的,其实也很简单,先设置一个标签,然后用它就可以跳转到这个标签了

标签可以位于goto的前面,也可以位于它的后面,如:
#include <stdio.h>

int main(void)
{
goto l1;

l1:printf("%d",5);
return 0;
}

goto 语句是最经典的计算机语句,叫“无条件转向语句”,执行到它,无条件地跳到指定的标号所在地。

下面程序读入fin_list的一行,每一行是一个文件名。
[许多语句] 用来处理一个文件,处理完了goto entrance 又回到开始,再读一个文件名。读到fin_list结束,goto No_More,跳到No_More:
退出这段程序。
entrance:
if ( fgets(one_line,200,fin_list) ==NULL) goto No_More;
....[许多语句]
....
goto entrance;
No_More: fclose(fin_list);

转向语句与标号配合使用。函数块里,标号名不可重名,(标号名如同路标)。例如,可以有多个 goto No_More 语句,但只可有 一个No_More:;

转向语句只能从程序内层转向同一层或外层,但不可转向它的内层。

例如(正确的):
for (j=0;j<n;j++){
Lab1:;
for (i=0;i<m;i++){
...
if (..) goto Lab1;
if (..) goto Lab2;
if (..) goto Lab3;
if (..) goto Lab4;
Lab2:;
...
}
...
Lab3:;
}
La