C/C++语法goto语句

1.了解goto语句

C语言中提供了可以随意滥用的goto语句和标记跳转的标号,从理论上来讲goto语句是没有必要的的,实践中没有got语句也可以很容易的写出代码。

但是在某些场合下goto语句还是用得着的,最常见的就是终止程序在某些深层嵌套的结构的处理过程。

是不是听起来很懵逼,什么“深层嵌套”啊啥玩意儿?说白了就是一堆for循环while循环的嵌套,平时我们用什么来终止循环呢?我们用break,但是这在一般的嵌套中可用,如果一下子套了10层20层for循环呢?那你就要写10个20个break吗?那恐怕你会眼花缭乱。

于是,goto语句横空出世,他可以从程序的任何一个地方跳转到任何一个地方(可能不太对但是这么理解就行了),这给我们编程带来了很大的方便。

2.语法形式

了解了goto语句之后让我们来看一下他的语法形式是什么样子的吧。

#include 
using namespace std;
int main()
{
again:
  	printf("你好!");
	goto again; 
  	return 0;
}

 相信你很容易就能看明白程序是怎样进行的,输出结果就是会无限输出“你好!”成为一个死循环。如果你理解了这一点,那么恭喜你,你已经掌握了goto语句的基本用法。

那么就有小伙伴要问了,这里的again是语法中的关键字吗?可以随意更改吗?答案是可以,这里的again只是作为一个标记,你可以改成read,a,error都可以。

那么又有小伙伴要问了,我看你这个代码感受不到goto语句有什么用呀。别急,友友们看下面的代码,相信会体会到goto语句的魅力。

for(...){
  		for(...){
  			for(...){
  				if(...){
  					goto again;
				}
			}
		}
	}
	...
	again:
		...

 上面这串代码没有实际意义但是相信你一定能够体会到他的意义所在。如果我们不用goto语句跳转到again这里,需要用三个break语句,但是用goto语句就能一步到位,是不是很方便!这是goto语句的常规用法。

另外,goto语句还可以实现一个很有意思的小程序”关机代码“,详见我的另一篇文章“C/C++实例goto语句实现“关机代码“。

链接附上:

C/C++实例goto语句实现“关机代码”_贵儿学长的博客-CSDN博客

你可能感兴趣的:(C/C++笔记总结,c++,开发语言)