一元操作符不應(yīng)該與其唯一的操作數(shù)分開组民。通常,所有其他二元操作符都應(yīng)該使用空白與其操作樹分隔開芍躏,但'.'和'->'例外邪乍。當遇到復(fù)雜表達式的時候我們需要做出一些判斷。如果內(nèi)層操作符沒有使用空白分隔而外層使用了对竣,那么表達式也許會更清晰些庇楞。
如果你認為一個表達式很難于閱讀,可以考慮將這個表達式拆分為多行否纬。在接近中斷點的最低優(yōu)先級操作符處拆分是最好的選擇吕晌。由于C具有一些想不到的優(yōu)先級規(guī)則,混合使用操作符的表達式應(yīng)該使用括號括上临燃。但是過多的括號也會使得代碼可讀性變差睛驳,因為人類不擅長做括號匹配。
二元逗號操作符也會被使用到膜廊,但通常我們應(yīng)該避免使用它乏沸。逗號操作符的最大用途是提供多元初始化或操作,比如在for循環(huán)語句中爪瓜。復(fù)雜表達式蹬跃,例如那些使用了嵌套三元?:操作符的表達式,可能引起困惑铆铆,并且應(yīng)該盡可能的避免使用蝶缀。三元操作符和逗號操作符在一些使用宏的地方很有用,諸如getchar薄货。在三元操作符?:前的邏輯表達式的操作數(shù)應(yīng)該被括起來翁都,并且兩個子表達式的返回值應(yīng)該是相同類型。