C語言的編程風(fēng)格第二章

字號:

第二章:大符號的位置
    另外一個C程序編程風(fēng)格的問題是對大括號的處理.同縮進(jìn)大小不同,幾乎沒有什么理由去選擇一種而不選擇另外一種風(fēng)格,但有一種推薦的風(fēng)格,它是Kernighan和Ritchie的經(jīng)典的那本書帶來的,它將開始
    的大括號放在一行的最后,而將結(jié)束大括號放在一行的第一位,如下所示:
    if (x is true) { we do y }
     然而,還有一種特殊的情況:命名函數(shù):開始的括號是放在下一行的第一位,如下:
    int function(int x) { body of function }
     所有非正統(tǒng)的人會非難這種不一致性,但是,所有思維正常的人明白: (第一) K&R是___對___的,(第二)如果K&R不對,請參見第一條. (:-))......另外,函數(shù)也是特殊的,不一定非得一致.
    需要注意的是結(jié)束的括號在它所占的那一行是空的,__除了__它跟隨著同一條語句的繼續(xù)符號.如"while"在do-while循環(huán)中,或者"else"在if語句中.如下:
    do { body of do-loop } while (condition);
     以及
     if (x == y) { .. } else if (x > y) { ... } else { .... }
    理由: K&R.
     另外,注意到這種大括號的放置方法減小了空行的數(shù)量,但卻沒有減少可讀性.于是,在屏幕大小受到限制的時候,你就可以有更多的空行來寫些注釋了.