寫(xiě)在前面 Ⅰ
寫(xiě)作本文的想法來(lái)源于:最近移植以前工程師代碼,打開(kāi)工程一看,代碼“凌亂”了······
原因在于代碼對(duì)齊的方式“錯(cuò)綜復(fù)雜”····
你們代碼對(duì)齊的方式是Tab?還是空格? 使用空格又是幾個(gè)空格?
關(guān)于代碼對(duì)齊 Ⅱ
代碼對(duì)齊主要牽涉到的就是使用Tab還是空格,以及空幾格對(duì)齊。下面簡(jiǎn)單講述一下相關(guān)的知識(shí)。
1.Tab和空格的配置
Keil:Edit -> Configuration -> Editor
IAR:Tools -> Options -> Editor
2.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下看代碼(和注釋)就凌亂了。
離譜的代碼中就會(huì)看見(jiàn)使用占3個(gè)空格的Tab,以上截圖舉例都還好,沒(méi)有使用占用3個(gè)空格的Tab。
代碼前面的對(duì)齊都還好處理,很多工具都可以自動(dòng)排版,像IAR,只要選中需要對(duì)齊的代碼,Ctrl + T就可以了。但代碼后面的注釋對(duì)齊就不是那么好處理了,如果使用Tab + 空格混合方式,更是容易混亂。
關(guān)于Tab和空格的調(diào)查 Ⅲ
有人針對(duì) GitHub 上多種語(yǔ)言的熱門(mén)項(xiàng)目(star 數(shù)量高的),分析了代碼對(duì)齊使用Tab和空格,以及空幾格的使用情況。
1.C語(yǔ)言
A.32.08% 用 Tab
B.35.31% 用 4 個(gè)空格
C.26.15% 用 2 個(gè)
D.4.31% 用 3 個(gè)
E.2.16% 用 8 個(gè)
2.C++
A.20.56% 用 Tab
B.39.11% 用 4 個(gè)空格
C.38.71% 用 2 個(gè)
D.1.61% 用 3 個(gè)
3.Java
A.11.6% 用 Tab
B.23.21% 用 2 個(gè)空格
C.65.19% 用 4 個(gè)
4.JavaScript
A.13.25% 用 Tab
B.59.94% 用 2 個(gè)空格
C.26.81% 用 4 個(gè)
5.PHP
A.28.68% 用 Tab
B.6.12% 用 2 個(gè)空格
C.65.2% 用 4 個(gè)
6.Ruby
A.0% 用 Tab
B.100% 用 2 個(gè)空格
C.0% 用 4 個(gè)
總結(jié) Ⅳ
關(guān)于代碼對(duì)齊,代碼編輯器既然支持Tab,也支持使用空格,所以個(gè)人覺(jué)得兩種方式都可以,只看個(gè)人習(xí)慣使用那一個(gè)了。
代碼對(duì)齊其實(shí)很好處理,選擇可以自動(dòng)對(duì)齊的工具對(duì)齊就OK了,但在代碼后面的注釋就不是那么容易對(duì)齊了(特別在Tab和空格混用情況下),我個(gè)人習(xí)慣在代碼后面把注釋也對(duì)齊,所以基本不用Tab符。
個(gè)人建議:對(duì)齊使用空格符,占2空格或4空格(常用)。其優(yōu)勢(shì):1.方便跨平臺(tái)使用; 2.對(duì)齊注釋。
-
keil
+關(guān)注
關(guān)注
68文章
1214瀏覽量
167060 -
代碼
+關(guān)注
關(guān)注
30文章
4809瀏覽量
68823 -
代碼編輯器
+關(guān)注
關(guān)注
0文章
14瀏覽量
6041
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論