在优先级规则方面,我一直喜欢Steve Oualline在"Practical C"中提出的规则:
C语言中有15种优先级法则(&& 在 || 之前,在?:之前)。实际的程序员将这些规则简化为两个:
1)乘法和除法比加法和减法优先级更高。
2)在其他所有运算符周围添加括号。
(foo == bar) || (baz == qux)
,那么你比LISP还糟糕。 - benif ((foo == bar) || (baz == qux))
而不是if (foo == bar || baz == qux)
,但并不足够重要以至于我很在意。 - Michael Burr&(row->count)
->比&(地址)具有更高的优先级。因此,您的表达式将被评估为&(row->count)