goto语句!

之前只是听说过goto语句,据说它不被推荐,因为丹尼斯里奇说它"易被滥用"。今天才知道goto语句怎么用。goto语句最早是衍生于Fortran语言和Basic语言的,它由两部分构成:goto和标签名

#include<iostream>
using namespace std;
int main()
{
    goto part;
    part:cout << "这是我的第一个goto语句!!!"<< endl;
    cout <<"dghtql";
    cout << "234";
    goto p;
    p:cout << endl;
    

}

输出:

cd "d:\程序\随笔程序\2020年1月\" && g++ goto.cpp -o goto && "d:\程序\随笔程序\20201月\"goto
这是我的第一个goto语句!!!
dghtql234

[Done] exited with code=0 in 3.881 seconds

可以看到,part之后所有p标签之前的语句都解释为part里应该执行的语句!!!

goto语句用于循环不仅麻烦还会容易造成错误,但是有一种情况是适合使用goto语句的,甚至还能够简化编程。就是从一组循环嵌套语句中跳出并执行循环中没有的语句(break语句只能跳出当前循环,并且什么也做不了)

#include<iostream>
using namespace std;
int main()
{
    char logo[3][15] = {"dghtql","dgxtql","dgh&dgxtql"};
    for(int i = 0;i < 3;i++)
        for(int j = 0;logo[i][j] != '\0';j++)
        {
            if(logo[i][j] == '&')
                goto help;
            else
            {
                cout << logo[i][j];

            }
            
        }

    help : cout << "\n&是我们的意思";
}

输出:

[Running] cd "d:\程序\随笔程序\2020年1月\" && g++ gotoxunhuan1.cpp -o gotoxunhuan1 && "d:\程序\随笔程序\20201月\"gotoxunhuan1
dghtqldgxtqldgh
&是我们的意思
[Done] exited with code=0 in 3.336 seconds

因为我不知道怎样确定goto的part的范围,因此我把help放在了main函数的最后面。

发布了267 篇原创文章 · 获赞 38 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/dghcs18/article/details/104073543