C语言,下面是一个程序的一部分,求高人解释...

[复制链接]
查看11 | 回复4 | 2011-3-24 21:46:10 | 显示全部楼层 |阅读模式
while((c & 0xF) == 0)
//这里面的&什么意思
{
g_CurBlock.y--;
c >>= 4;
//符号>>=是怎么预算规则?
}

回复

使用道具 举报

千问 | 2011-3-24 21:46:10 | 显示全部楼层
1、c & 0xF 将c与0xF进行与运算,如果c的低四位全为零,则c & 0xF为零,开始执行while里的语句。2、g_CurBlock.y--; 是将g_CurBlock.y值减1。3、 c >>= 4; 是将c右移4位后再赋值给c。
回复

使用道具 举报

千问 | 2011-3-24 21:46:10 | 显示全部楼层
&是“与”的意思“>=”是大于等于的意思~
回复

使用道具 举报

千问 | 2011-3-24 21:46:10 | 显示全部楼层
&是指 C 和 0XF 这两个必须都为0》=也只是比较的意思
回复

使用道具 举报

千问 | 2011-3-24 21:46:10 | 显示全部楼层
&按位与,化成二进制以后按位执行与运算(1&1=1,其他的0&1=0&0=1&0=0)c>>=4是赋值(组合赋值运算),就是c=c>>4,就是c右移4位赋值给c
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行