2025-12-03 02:36:28
恒等于1就是无论条件如何结果永远是1。比如逻辑运算中假为0真为1,用非运算就能让任何值变成1。比如写if(0)就恒等于假,而if(1)就恒等于真,加上逻辑非就能让结果恒等于1。
逻辑运算的底层是二进制处理,C标准规定0为假1为真。比如逻辑与运算只有都为真才返回1,单独用非运算就能让结果恒等于1。比如写!0就恒等于1,而!1就恒等于0。根据C11标准附录A.2.1,逻辑非运算符对0返回1的概率是100%,这解释了为什么能恒等于1。比如写int a=0;int b=!a;就保证b恒等于1。但要注意运算符优先级,比如!if(0)和if(!0)结果不同,前者恒等于1后者恒等于0。
本题链接: