导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→[求助]关于位操作的问题,找了几个小时,都查不到的[yx4311]

 *第48125篇: [求助]关于位操作的问题,找了几个小时,都查不到的

  
楼 主:yx4311 2007年4月21日21:30
 [求助]关于位操作的问题,找了几个小时,都查不到的

unsigned char key_s, key_v;
sbit K1 = P1^4;
bit scan_key() 
// 扫描按键                            
{
 key_s = 0x00;
 key_s |= K1;
 return(key_s ^ key_v); 
}


请问key_s ^ key_v怎么会是一个1位的 呢 ?

  
2楼:yishan2050 2007年4月22日23:12
 [灌水]
return(key_s ^ key_v);
上面的key_s ^ key_v很明显是一个unsigned char类型数据。
不过,函数的返回值是bit类型,这中间应该是存在一个数据类型的隐式转换。
如果key_s ^ key_v的结果非0,则返回值为1;如果key_s ^ key_v结果为0,则返回值为0。
以上纯属推测,我自己也没验证。

>>>>>>对该主题发表你的看法

本主题贴数2,分页: [第1页]


[上一篇主题]:关于单片机硬件的一个问题求助

[下一篇主题]:LM567捕获40KHz超声波的问题