return,break,continue的區別

對於return,break,continue大家都很熟悉都可以由於跳出循環,那麼他們的區別到底是什麼呢?

多說無益,先上程序:

#include <iostream>
using namespace std;

int A[10]={0};

void Fun1()
{
  if (A[0]!=-1)
  {
      for (int i=0;i<10;i++)
       {
           if (A[i] == 5)
            { 
               break;
            }
         A[i] = 100;
       }
   cout<<"***Fun1*** ";
  }
}

void Fun2()
{
   if (A[0]!=-1)
    {
       for (int i=0;i<10;i++)
        { 
          if (A[i] == 5)
           {
             continue;
           }
         A[i] = 100;
        }
     cout<<"***Fun2*** ";
   }
}

void Fun3()
{
  if (A[0]!=-1)
   {
      for (int i=0;i<10;i++)
       {
          if (A[i] == 5)
          {
             return;
          }
         A[i] = 100;
       }
    cout<<"***Fun3*** ";
  }
}

int main()
{
  for (int i=0;i<10;i++)
  {
     A[i] = i;
  }


cout<<"未修改函數時:"<<endl;
 for (int i=0;i<10;i++)
 {
    cout<<A[i]<<" ";
  }

cout<<endl;


cout<<"Fun1修改函數後:"<<endl;
Fun1();
for (int i=0;i<10;i++)
{
  cout<<A[i]<<" ";
}

cout<<endl;


cout<<"Fun2修改函數後:"<<endl;
Fun2();
for (int i=0;i<10;i++)
{
 cout<<A[i]<<" ";
}

cout<<endl;


cout<<"Fun3修改函數後:"<<endl;
Fun3();
for (int i=0;i<10;i++)
{
  cout<<A[i]<<" ";
}


return 0;
}


結果如下圖:


從結果可以猜測個幾分區別:

最大的卻別在於:return可以一次性的跳出所有循環;break可以跳出一層循環;continue可一跳出一次循環。

其他的區別可以參考下列網址:

http://blog.csdn.net/holandstone/article/details/7613261

http://blog.sina.com.cn/s/blog_60c9cf32010172zp.html

http://www.cnblogs.com/iceword/archive/2010/06/04/1751382.html

http://blog.csdn.net/wai631/article/details/4376219

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章