這是我自己按照別人思路寫得一個程式,我想問一下大佬,在定義掃描按鍵函式的時候,如果函式“SM()”中,非0xFF, 不成立程式還會有回傳值嗎,或者繼續往下運行嗎?
#include<reg51.h>
#include<intrins.h>
#define LED P0
#define KEY P1
void max(int p)
{
int x,y;
for(x=p;x>0;x--)
for(y=99;y>0;y--);
}
//延時
int SM()
{
int i,zhi;
if(KEY!=0xFF)
{
max(1);
if(KEY!=0xFF)
{
zhi=KEY;
i=0;
while((i<50)&&(zhi!=0xFF))
{
i=i+1;
max(1);
}
}
}
return zhi;
}
//掃描按鍵
void main()
{
int led,key;
while(1)
{
key=SM();
switch(key)
{
case(0xFE):led=~0x0C;
break;
case(0xFD):led=~0xDB;
break;
case(0xFB):led=~0xF2;
break;
case(0xF7):led=~0x67;
break;
case(0xEF):led=~0xB6;
break;
case(0xDF):led=~0xBF;
break;
case(0xBF):led=~0xE0;
break;
case(0x7F):led=~0xFF;
break;
}
LED=led;
}
}
uj5u.com熱心網友回復:
應該會回傳,i大于50就回傳了uj5u.com熱心網友回復:
我的意思是如果函式中的if 陳述句不成立那么會不會繼續執行,或者會不會有回傳值?
uj5u.com熱心網友回復:
if陳述句控制的是if陳述句塊,如果if不成立,只有if控制的陳述句塊不執行,不影響別的代碼邏輯
uj5u.com熱心網友回復:
在你這個程式會有回傳值,回傳變數zhi,由于你們有對變數zhi進行初始化,此時變數zhi是一個隨機值,即回傳的是一個隨機值轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/59079.html
標籤:C語言
上一篇:初學者 求幫助
