如果 $a$ 为 int 类型的变量,且表达式 ((a | 3) == 3) 的值为 true,则说明 $a$ 在从 $0$ 到 $3$ 之间(可能为 $0$、可能为 $3$)。
看到 a | n == n → a 的低 n 位全为 1,高位全为 0
表达式结果类型由最高精度的操作数决定。double参与运算后整个表达式提升为double。
考点:位运算|按位或|数值范围 记忆:a | 3 == 3说明a低两位必须为11,高位全0→ 答案 A. 正确
&,范围会无限扩大(如 7, 15…)1