zoukankan      html  css  js  c++  java
  • 突然发现一个很好用的东西——goto

    今天,偶然间发现了居然c++中还有goto这个语句,并且是非常的好用啊!于是就学了一把!这里分享一下如何使用它······

    也许你也有如下的经历,比如说我们想一下就退出几层循环,但是发现break语句只能退出一层,所以我们就必须定义一个bool类型的flag然后在外层循环判断一下是否需要break掉这层循环,比如像这样:

    bool flag=false;
    for(int i=1;i<=10;++i)
    {
    	for(int j=1;j<=10;++j)
        {
        	if(i=1&&j=10) 
            {
            	flag=true;
                cout>>i>>endl>>j;
                break;
            }
        }
        if(flag)
        break;
    }
    

    相信大家都应该会这样写,或者用一个函数来写。但是有了goto后可以说是,你想到哪里就到哪里,你甚至可以在根本不在一起的两个for循环中乱跳,总之想跳哪里就跳哪里!

    用法也是非常简单

    goto后加一个标记(eg:goto num1;)
    然后再在源代码的任意位置 把标记放进去,程序执行完goto语句后自动跳到标记所在位置:
    
    注意:
    标记一定是后面加一个引号不是分号!!!(eg:num1:)
    

    下面给一个goto应用实例

    //goto
    #include<cstdio>
    #include<cstring>
    using namespace std;
    int main()
    {
    	for(int i=1;i<=10;++i)
    	{
    		for(int j=1;j<=10;++j)
    		{
    			if(i==5&&j==9)
    			{
    				goto num1;
    			}
    			else
    			{
    				printf("%d %d
    ",i,j);
    			}
    		}
    	}
    	num1:
    	return 0;
    }
    

    注意事项

    1、goto不能跨函数转移!

  • 相关阅读:
    log4js 2.X版本配置详解
    ping -c 3 localhost
    children_process.exec 执行 ping命令报错
    淘宝双十一为什么会出现通道拥挤?
    'ascii' codec can't decode byte 0xd6 in position 0
    window 安装grunt
    display:none与visible:hidden的区别 slideDown与
    ztree-demo 2
    ztree-demo
    技术总结PHP+微信
  • 原文地址:https://www.cnblogs.com/mudrobot/p/13330882.html
Copyright © 2011-2022 走看看