有关C程序语句问题请教
时间:10-02
整理:3721RD
点击:
uchar Keyscan(void)
{
uchar i, j, temp, Buffer[4] = {0xef, 0xdf, 0xbf, 0x7f};
for(j = 0; j < 4; j++)
{
P1 = Buffer[j];
temp = 0x01;
for(i = 0; i < 4; i++)
{
if(!(P1 & temp)) /
return (i + j * 4); //返回取得的按键值
temp <<= 1; //判断的位,左移一位
}
}
return 16; //判断结束,没有键按下,返回16
}
如上,在什么情况下, if(!(P1 & temp)) 才执行后面的语句。?
{
uchar i, j, temp, Buffer[4] = {0xef, 0xdf, 0xbf, 0x7f};
for(j = 0; j < 4; j++)
{
P1 = Buffer[j];
temp = 0x01;
for(i = 0; i < 4; i++)
{
if(!(P1 & temp)) /
return (i + j * 4); //返回取得的按键值
temp <<= 1; //判断的位,左移一位
}
}
return 16; //判断结束,没有键按下,返回16
}
如上,在什么情况下, if(!(P1 & temp)) 才执行后面的语句。?
P1.0~P1.3接的任一按键按下时
几把华几把华几把华
,搞明白了。