读书人

笔试的两道题解决方案

发布时间: 2013-01-04 10:04:18 作者: rapoo

笔试的两道题
1.
unsigned char i,b;
b = 0;
for(i = 5; i >= 0; i--)
{
b+=i;
}

b的结果为多少?

2.
unsigned char a = 0x00;
if(a & 0x01 != 0x01)
{
cout <<"a!= 0x01";
}
else
 cout << "a == 0x01";
这段程序有什么问题?
[解决办法]
第一题的结果应该是死循环,在机子上跑不出来
第二题是运算符的优先级问题,运算符&和!=的优先顺序!=的优先级高于&,如果加上括号(a & 0x01),结果就不一样了。

读书人网 >C++

热点推荐