開發人員之間關於製表符與空格的爭論圍繞著程式碼中縮排的首選方法。 「製表符」的擁護者認為,製表符在語義上對於縮排來說是正確的、可自訂的並且更易於訪問,特別是對於那些有視覺障礙的人來說。他們建議使用製表符進行縮進,使用空格進行對齊。 「空格」的倡導者強調一致性,因為空格可以確保程式碼格式在不同的編輯器和平台上顯示相同,從而避免選項卡大小可變的問題。在團隊環境中通常首選這種方法,以保持統一的程式碼外觀。
但是如果你用C語言程式設計並且需要使用Makefile,那就別無選擇-你必須使用‘Tabs’。
Makefile 中製表符的要求源自 Stuart Feldman,Unix 開發人員和「make」公用程式的建立者。 Feldman 選擇製表符來幫助區分 Makefile 中的指令和其他文字。具體來說,「make」早期實作中使用的 Lex 解析器很難區分製表符和空格,從而導致了製表符的強制要求。儘管費爾德曼承認這是一個次優的決定,但約定仍然存在。
上面的螢幕截圖顯示了一個 Makefile。此範例使用記事本中的「顯示符號」功能 - 使用它您可以清楚地區分製表符和空格 - 箭頭表示第 8、12 和 16 行使用了製表符。如果您使用空格而不是縮排這些行選項卡,程式將無法運作 - 您將收到錯誤:
Makefile:line_number: *** 缺少分隔符號。停下來。
因此,您在程式設計時是否喜歡製表符或空格取決於您。但如果您在 C 中使用 Makefile,Stuart 讓您別無選擇。
如果您還沒有看過上面的《矽谷》劇集(S3 Ep6)——請觀看一下,就像整個系列一樣,它非常有趣。
本·桑托拉 — 十月
以上是製表符與空格 — C 中的 Makefile的詳細內容。更多資訊請關注PHP中文網其他相關文章!