標(biāo)題: 函數(shù)里面有多個if但是我想要他執(zhí)行完某個if之后直接跳出整個Keyscan()函數(shù) [打印本頁]

作者: lengyu309    時間: 2017-5-22 15:46
標(biāo)題: 函數(shù)里面有多個if但是我想要他執(zhí)行完某個if之后直接跳出整個Keyscan()函數(shù)
函數(shù)里面有多個if但是我想要他執(zhí)行完某個if之后直接跳出整個Keyscan()函數(shù)?
求解:函數(shù)里面有多個if但是我想要他執(zhí)行完某個if之后直接跳出整個Keyscan()函數(shù)?
void keyscan()
{  
  if(right==0)
{   
   delayms(5)
   if (right==0)
   gamesstatues=0;
}
if(down==0)
{   
   delayms(5)
   if (down==0)
   gamesstatues=1;
}
if(up==0)
{   
   delayms(5)
   if (up==0)
   gamesstatues=3;
}
if(left==0)
{   
   delayms(5)
   if (left==0)
   gamesstatues=2;
}
}

作者: zqy181818    時間: 2017-5-22 16:37
用語句break;
作者: bbg3659    時間: 2017-5-22 16:37
if本來就是判斷語句啊.當(dāng)你下面的不符合條件的情況下是不會跑的.比如第一個if(right==0),當(dāng)為真時,程序就會自動去跑 gamesstatues=0為條件的語句.......
我是這么想的.....

作者: 云破千笙    時間: 2017-5-22 16:57
本帖最后由 云破千笙 于 2017-5-22 17:11 編輯

根據(jù)樓主的意思,想要跳出函數(shù)Keyscan();
在執(zhí)行的if語句里加 return; 就能跳出函數(shù)了
void keyscan()
{  
         if(right==0))
        {   
           delayms(5))
           if(right==0))
           gamesstatues=0;
           return;
        }
        if(down==0))
        {   
           delayms(5))
           if(down==0)
           gamesstatues=1;
           return;
        }
        if(up==0))
        {   
           delayms(5))
           if(up==0))
           gamesstatues=3;
           return
        }
        if(left==0))
        {   
           delayms(5)
           if(left==0))
           gamesstatues=2;
           return;
        }
}

作者: 1306050211    時間: 2017-5-23 15:02
用一個return就好了

作者: 灰灰灰    時間: 2017-5-23 15:09
加個return 1;
作者: 3760609865    時間: 2017-5-23 23:17
我也有相同的疑問,學(xué)習(xí)了,謝謝。




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1