How can I break out of two nested for loops in Objective-C?

后端 未结 13 616
梦如初夏
梦如初夏 2020-12-01 00:49

I have two for loops nested like this:

for(...) {
    for(...) {

    }
}

I know that there is a break statement. But I am con

13条回答
  •  臣服心动
    2020-12-01 01:25

    The break statement only gets you out of the innermost loop. If you don't want the added overhead in code, memory and performance of a dedicated state variable, I recommend refactoring the code out into a function or method of its own, and using return to get out of all the loops:

    void do_lots_of_work(void)
    {
      int i, j;
    
      for(i=0; i<10 ; i++)
      {
        for(j=0;j< 10; j++)
        {
         ..
         ..
         if(disaster_struck())
          return; /* Gets us out of the loops, and the function too. */
        }
      }
    }
    

提交回复
热议问题