首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

只应用位级和逻辑运算,编写一个C表达式,他等价于x==y。换句话说,当x和y相等时他将返回1,否则返回0

2013-08-09 
只使用位级和逻辑运算,编写一个C表达式,他等价于xy。换句话说,当x和y相等时他将返回1,否则返回0只能用位

只使用位级和逻辑运算,编写一个C表达式,他等价于x==y。换句话说,当x和y相等时他将返回1,否则返回0
只能用位级运算 & | ~ ^ 和逻辑运算 || && !
如果才能做到?

[解决办法]

引用:
引用:
!((~x) & y)

void main()
{
char a =0xFF;
int b =0xFFFF;
int c = !((~a)&b);

}
这种情况怎么解决?


强制转换为无符号整数即可
[解决办法]
就是因为有隐式转换才没有执行到里面的,a先被转换成int的再跟b比较,条件不成立。

用 !(x & ~y) ……楼上已经有给出来的了。

引用:
void main()
{
char a =0xFF;
int b =0xFFFF;

while(a == b)
{
//没执行到这
}
}
这里好像不存在隐式转换啊

热点排行
Bad Request.