goto语句是一种无条件转移语句, 与BASIC中的goto语句相似。goto 语句的使用格式为:
goto 语句标号;
其中标号是一个有效的标识符,这个标识符加上一个“:”一起出现在函数内某处, 执行goto语句后,程序将跳转到该标号处并执行其后的语句。另外标号必须与goto语句同处于一个函数中,但可以不在一个循环层中。通常goto语句与if条件语句连用, 当满足某一条件时, 程序跳到标号处运行。
goto语句通常不用,主要因为它将使程序层次不清,且不易读,但在多层嵌套退出时, 用goto语句则比较合理。
【例6.1】用goto语句和if语句构成循环,
main()
{
int i,sum=0
i=1
loop: if(i<=100)
{sum=sum+i<br/><br/> i++<br/><br/> goto loop}
printf("%d\n",sum)
}
有什么加我387700806。切记不要乱用。少用!
goto用在内层循环中比较合适,
用
break
只能跳出内层循环,
而
goto
可以直接跳出最外层循环,在合理的地方使用就可以了。
不要频繁的使用goto,过多的使用goto语句,会使程序混乱
从理论上讲,goto语 句是没有必要的,实践中不使用goto语句也可以很容易地写出代码
但是,在某些场合下goto语句还是用得着的。
最常见的用法是终止程序在某些深度嵌套 的结构中的处理过程,
例如一次跳出两层或多层循环。这种情况下使用break语句是不能达 到目的的,
它只能从最内层循环退出到上一级的循环
所有使用了goto语句的程序代码都能改写成不带goto语句的程序,
但可能会增加一些 额外的重复测试或变量
标号的命名同变量命名的形式相同,标号的后面要紧跟一个冒号。
标号可以位于对应的 goto语句所在函数的任何语句的前面。标号的作用域是整个函数。
goto 是转向语句
goto 标号;
例
int x=1
biaohao:
x=x+1
if(x<100)
goto biaohao
cout<<"x=100"<<endl
//当x小于100,执行if 后面的goto语句,
于是转跳到biaohao处执行biaohao后面的语句x=x+1,接着if语句,
如此反复。。。。。。,
直到x=100 if语句括号表达式为假不执行后面的goto语句,
于是跳过执行cout语句输出x=100这几个字符