2012-10-07 118 views
14

我是內核編程的新手,所以我想知道哪種編碼風格更可接受。例如,如果出現錯誤處理,以下哪項更好?Linux內核編碼風格

這一個:

/* some stuff */ 
if(error) { 
    /* error handling */ 
    return -(errorcode); 
} 
/* normal actions */ 

或者這一個:

/* some stuff */ 
if(!error) { 
    /* normal actions */ 
} else { 
    /* error handling */ 
    return -(errorcode); 
} 

我在哪裏可以找到任何文件,即關於內核編碼標準?

+12

http://www.kernel.org/doc/Documentation/CodingStyle – ouah

+0

@ouah使這是一個答案) – Alex

+1

而要細說ouah的殊勝回覆:你的第一個片段是第二個「首選」。但重點是使用K&R風格(與.Net或Java或 - 天堂禁止 - MS「匈牙利」編碼風格);) – paulsm4

回答

26

Linux內核編碼風格指南:

https://www.kernel.org/doc/Documentation/process/coding-style.rst

關於你的榜樣,我個人比較喜歡的第一個樣式。隨着第二風格你很快就會違反此Linux內核的樣式規則(內核風格有8個字符的縮進):

如果你需要3級以上的縮進,你就有點犯糊塗的了,應該修正你的 程序。

從上到下(而不是水平)編寫代碼有時被稱爲duffing。我可以建議你關於這個問題的這個優秀的閱讀:

Reading Code From Top to Bottom

+0

感謝您參考閱讀代碼從頂部到底部的文章。這確實是一個很好的例子。 –