如果代碼對(duì)齊不規(guī)范,代碼看著就很凌亂,比如Tab 和 空格混合使用:
?
如果你看到類(lèi)似以上代碼,特別是前同事丟下?tīng)€攤子的時(shí)候,你內(nèi)心可能會(huì)出現(xiàn)十萬(wàn)只***。
01 關(guān)于代碼對(duì)齊
代碼對(duì)齊主要就是Tab、空格,還有就是二者混合,在Keil 和 IAR中設(shè)置對(duì)齊方式比較簡(jiǎn)單:
1.Keil: Edit -> Configuration -> Editor
?
2.IAR: Tools -> Options -> Editor
?
3.Tab和空格的區(qū)別
Tab和空格其實(shí)只是兩個(gè)不同的符號(hào),但在編程對(duì)齊中的意義卻大不一樣。一個(gè)Tab可以占空個(gè)格的位置,但一個(gè)空格就只有一個(gè)空格的位置。
在Keil開(kāi)發(fā)環(huán)境中可以顯示出Tab和空格符,不妨看一下在Tab和空格交替編輯下,原本使用占2空格Tab符號(hào),實(shí)際在4隔空Tab下看代碼(和注釋?zhuān)┚土鑱y了。
?
離譜的代碼中就會(huì)看見(jiàn)使用占3個(gè)空格的Tab,以
上截圖舉例都還好,沒(méi)有使用占用3個(gè)空格的Tab。
代碼前面的對(duì)齊都還好處理,很多工具都可以自動(dòng)排版,IAR只要選中需要對(duì)齊的代碼,Ctrl + T就可以了。Keil可以安裝格式化插件AStyle即可輕松解決問(wèn)題。
但代碼后面的注釋對(duì)齊就不是那么好處理了,如果使用Tab + 空格混合方式,更是容易混亂。
02 代碼對(duì)齊究竟該用哪種?
不同人、不同公司的代碼風(fēng)格不一樣,使用的對(duì)齊方式也不一樣。代碼對(duì)齊的通常有2空格,或4空格,或者Tab對(duì)齊。
但不建議 空格 和 Tab 混合使用,或者使用3個(gè)空格,或者5個(gè)空格這種非常規(guī)方式。
究竟用2空格、4空格、還是Tab對(duì)齊,這個(gè)需要看你項(xiàng)目實(shí)際情況,都可以的,就看你代碼風(fēng)格。
唯一一點(diǎn)就是不建議混合使用,使用Tab或者空格都可以用格式化工具轉(zhuǎn)化。但如果你混合使用了,轉(zhuǎn)化出來(lái)的代碼,有可能是凌亂的。
03 Tab和空格不能在一起
要么使用Tab ,要么使用空格,如果兩者同時(shí)使用,那么會(huì)出現(xiàn)后期維護(hù)難,遭同事懟罵的后果。
審核編輯:劉清
-
嵌入式
+關(guān)注
關(guān)注
5090文章
19173瀏覽量
306851 -
IAR
+關(guān)注
關(guān)注
5文章
354瀏覽量
36747 -
TAB
+關(guān)注
關(guān)注
0文章
16瀏覽量
11567 -
keil
+關(guān)注
關(guān)注
68文章
1214瀏覽量
167149
原文標(biāo)題:嵌入式編碼對(duì)齊 Tab 和 空格混著用,太糟糕了~
文章出處:【微信號(hào):嵌入式情報(bào)局,微信公眾號(hào):嵌入式情報(bào)局】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論