几道题
1.生成x的最低有效字节和y的剩余字节的合并,设x和y为int型,想一想是不是很简单啊,看我写的
x & 0x00000011 + y & 0x11111100
恩……,是不是觉得,这个 & 和+的优先级有点不确定啊,或者是这个&要不要写两遍啊,都不是,正确的写法应该是
x & 0x000000 f f + y &f f f f f f 00;
呵呵呵呵……
2.判断一个unsigned int型变量是否所有比特都为0,若是返回1, 否则返回0,机智的你肯定能想到
if(x == 0)
return 1;
else
return 0;
呵呵,真简单,
呵呵,不准用条件,
那么……呵呵,不准用循环
return 0 == x;
呵呵
(注:原题不是这个意思,但是被我理解成这个样子,也是有一定意义的,恩)
3.判断一个unsigned 变量,有偶数个1,返回1,奇数个1返回0,条件,不准用条件,不准用循环,不准乘,除,取模,强制类型转换,最多只能包括12个算数运算,位运算和逻辑运算
呵呵,
%>_<%,额,这个题有点难,是不是,我再想一想,顺便找找答案,再说