一:前言
goto是循环的本质,对应汇编中的jmp跳转,c中的while,do while 和for在程序编译时,都要拆解为汇编的jmp.
goto语句--无条件跳转语句,使用方法为 goto 语句标号
语句标号的命名规则和C语言的变量命名规则一样,例如goto lable_ 合法 goto 123 不合法
goto的使用场景最主要分为如下两种
- 向上跳转,实现循环
- 向下跳转,实现中间部分代码不执行
引用https://www.runoob.com/cprogramming/c-goto-statement.html的两张图片来描述这两种场景
二:实例
#include<stdio.h>
void print(){
lable:
print(" i am print func");
}
int main(){
int i = 1;
int total = 0;
lable:
total += i;
i++;
if (i<=100)
{
goto lable; //向上跳转 ,实现循环
}
printf("%d\n",total);
if (i>5)
{
goto error; //向下跳转,实现中间部分代码不执行
}
error:
printf("system is errot");
}
三:注意事项
1.使用goto语句只能在同一个函数进行跳转,不能从一个函数跳转到另一个函数
来源:CSDN
作者:马赛克|
链接:https://blog.csdn.net/qq_39112646/article/details/103826496