C语言中a|b是什么意思?

原题如下:main()
{
unsigned int a=32,b=66;
printf("a|b=%c\n",a|b);
}我想问的是a|b是什么意思,运行结果为a|b=b
原题没错!还是不太明白耶,既然是或运算,a|b如何判断真假呢,为什么不是得a呢

#include<stdio.h>
int main()
{
unsigned int a=32,b=66;
printf("a|b=%c\n",a|b);
}
是b。。。。。
楼主。。。。b的ASCII码就是98.。。。。。。。
结果就是98只不过输出的是ASCII码中ASCII码值为98的字符。。。。。。。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-07-19
逻辑或:
举例:真为1,假为0,
是有真则真
3|5写成二进制:
00000011 (3)
00000101 (5)
结果是00000111

至于楼主的问题我再想想,不好意思哈,暂时还想不出来
第2个回答  推荐于2018-02-27
按位相或,1|1=1|0=0|1=1 0|0=0(二进制)
举例子:5|6(十进制)就是101|110=111(二进制)本回答被提问者和网友采纳
第3个回答  2011-07-19
先把ab都花简称二进制的,再进行或运算啊