c语言中提供了可以随意滥用的goto语句和标记跳转的标记
从理论上goto语句是没有必要的,实践中没有goto语句也可以很容易的写出代码
但是某些场合下goto语句还是用得着的,最常见的用法就是终止程序在深度嵌套的结构的处理过程,例如一次跳出两层或者多层循环。
下面是goto语句的一个例子
#include<stdio.h>
int main()
{
tqm:
printf("lalala\n");
printf("hahaha\n");
goto tqm;
return 0;
}
当程序打印了lalala和哈哈哈之后又返回了tqm重新打印lalala和hahaha,导致程序陷入死循环
当处于深层嵌套的时候,使用goto将会使运行快捷很多
注:goto语句只能在一个函数跳转,不能够跨函数
#include<stdio.h>
void test(void)
{
flag:
printf("test\n");
}
int main()
{
goto flag;
return 0;
}
当我们使用这样一串代码的时候,函数就会报错,说明goto不能跨函数使用