TIOBE - C Coding Standard
|Synopsis:||Expressions which either mix operators from the set >, >=, <, <=, ==, !=, with operators from the set <<, >>, ^, &, |, &&, || or which use two or more distinct operators from the latter set shall be fully parenthesised and make no use of the C precedence rules.|
|Mixing relational and logical operators without explicit parenthesisation is a notorious
source of error in C programs.
if ( a == b && c == d ) /* WRONG - precedence used */
if ((a == b ) && ( c == d )) /* RIGHT */