!这个是取反的意思 |这个是或的意思 !a就是给a取反 得到0 成了 0|a =0|1 0和1或运算的结果是1 所以 !a|a 的值为1
1、值是1.2、按照符号优先级:域级->类级->对象级->指针->数学->流->比较->位->条件->赋值->异常->序列!a优先执行于a|a,所以有(!a)|a3、如果a=1,即假设在4位的二进制模式下为0001,!后变成0000,0000|0001=0001。所以a值不变。4、!会把非0的数全部变0,0变为1