好不容易用goto实现个功能,从里面的第三层循环跳到外面的第一层循环老大说禁止用goto,悲剧了,有没有!!!!!!!!!!!!!牛人解答替代方法

解决方案 »

  1.   

    什么老大。这种情况就应该用goto。
      

  2.   

    禁用goto是有道理的,不访有时间了解下隐患
      

  3.   

    本帖最后由 caozhy 于 2011-07-08 00:12:20 编辑
      

  4.   


    for(int i=0;i<10;i++)
    {
        for(int j=0;j<10;j++)
        {
             if(j==6)
             {
                  i=10;
             }
        }
    }
      

  5.   

    不能用GOTO是指不能用GOTO在程序中嵌套跳转。
    会让程序走向忽上忽下,和走迷宫似的。当然GOTO跳出循环貌似也不是好习惯,在某本书上看过。
      

  6.   

    貌似不让用goto语句,其实合理使用反而简化程序,思路更清晰!
      

  7.   

    do
    {
       if(xxx)
        break;
    }while(false)
      

  8.   

    不推荐用goto,以及return,是因为它是一种非结构化语句,对于初学者容易造成很多错误,如
    file.open()
    .....
    file.close()
     以前的编码,(尤其是BASIC时代)初学者很容易犯的就是在open后直接跳到close外,结果文件一直关不上,自己都不知道哪里错的。
      90年代出刚学c语言时,号称是结构化语言,一个很重要的特点就是去掉了goto,不过又被CSHARP捡回来了。 是因为对于经验丰富的程序员,goto确实很方便