为什么以下表达式为 TRUE?

Why is following expression TRUE?

我最近开始学习 C 语言 Sams 在 21 天内自学 C 语言,但我不明白为什么一个表达式的计算结果为 TRUE。这是本章末尾的练习之一。

x = 4
y = 6
z = 2
if(x != y - z)

我认为“-”的优先级高于“!=”。我错过了什么?我的意思是,已经很晚了,我从早上 5 点就醒了,所以也许我的大脑正在放弃...

if语句中的表达式

if(x != y - z)

可以使用括号等价地重写,如

if(x != ( y - z ))

因为加法运算符-比等式运算符!=具有更高的优先级。

实际上 x 等于表达式 y - z 的值,因此条件计算结果为逻辑假。

看来书中有错别字