C语言中&= , ?和 : 分别是什么意思啊?还有一个&和&&有没有区别啊?求大神指教

如题所述

&=,表示将这个符号左边的数和右边的数做与运算,再把结果赋给左边的数,例如:a &= b相当于
a = a&b。?:是问号表达式,例如 a>b?a:b,意思就是如果a大于b,那么这个表达式的值就是a,否则表达式的值为b。&和&&有区别的,前面一个是按位与,后面一个是逻辑与,例如:
1 & 2,这个表达式的值为0,1 && 2这个表达式的值为1
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-01-29
具体查看运算符。
1. 算术运算符 :* - /
2.关系 运算 符: > < == != >= <=
3. 逻辑运算符 :! && ||
4.位运算符:<< >> ~ | ^ &
5. 赋值运算符 :=及扩展赋值运算符
6.条件 运算 符:?:
7.逗号 运算 符:,
8. 指针运算符 :*和&
9.求字节数 运算 符:sizeof
10. 强制类型转换 运算符:(类型)
11.分量 运算 符:. ->
12. 下标 运算符:[ ]
13.其他:如 函数调用 运算 符:()
&和&&有区别,一个是逻辑运算,一个是指针运算
要查看具体用法弄就本书啃啃吧本回答被提问者和网友采纳
第2个回答  2013-01-29
&=应该和+= -=差不多吧
? :应该是三目运算符吧 例子:c=(a>b)?a:b 就是说 判断a>b吗 如果是c就赋值为a,否则就赋值为b。
一个&表示的位与运算
两个&表示的逻辑and
第3个回答  2013-01-29
& 是按位与。
&& 是逻辑与。
------------------------------
a &= b; 意思是: a = a&b;
a +=b; 意思是: a = a+b;
-------------------------------
? : 是问号表达式。
a > b ? d : e 等价于下面这段代码
if(a > b)
{
return d;

}else
{
return e;

}
第4个回答  2013-01-29
A &= B 等效于 A = A & B
?:是三目操作符
相似回答