代碼風格好不好就像字寫得好不好看一樣,如果一個公司招聘秘書,肯定不要字寫得難看的,同理,代碼風格糟糕的程序員肯定也是不稱職的。雖然編譯器不會挑剔難看的代碼,照樣能編譯通過,但是和你一個Team的其他程序員肯定受不了,你自己也受不了,寫完代碼幾天之後再來看,自己都不知道自己寫的是什麼。[SICP]裡有句話說得好:“Thus, programs must be written for people to read, and only incidentally for machines to execute.”代碼主要是為了寫給人看的,而不是寫給機器看的,只是順便也能用機器執行而已,如果是為了寫給機器看那直接寫機器指令就好了,沒必要用高級語言了。代碼和語言文字一樣是為了表達思想、記載信息,所以一定要寫得清楚整潔才能有效地表達。正因為如此,在一個軟件項目中,代碼風格一般都用文檔規定死了,所有參與項目的人不管他自己原來是什麼風格,都要遵守統一的風格,例如Linux內核的[CodingStyle]就是這樣一個文檔。本章我們以內核的代碼風格為基礎來講解好的編碼風格都有哪些規定,這些規定的Rationale是什麼。我只是以Linux內核為例來講解編碼風格的概念,並沒有說內核編碼風格就一定是最好的編碼風格,但Linux內核項目如此成功,就足以說明它的編碼風格是最好的C語言編碼風格之一了。