表示式和基本語句的規範
真正的高手對於自動語法語句的規範也是非常講究或者說有自己一套優美風格。
(1)如果程式碼行中的運算子比較多,用括號確定表示式的操作順序,避免使用預設的優先順序
(2)不要編寫太複雜的複合表示式
(3)不要有多用途的複合表示式
如:d=(a=b+c)+r;
(4)不要把程式中的複合表示式與“真正的數學表示式”混淆
if語句效率
(5)不可將布林變數直接與TRUE、FALSE或者1,0進行比較。因為對於bool來說零值為假,記為FALSE,任何非零值都是“真”,記為TRUE。TRUE究竟是什麼值要看平臺,沒有什麼的統一標準。例如VC則為1.而VB則為-1.
不要使用下面的風格:
if(flage == TRUE)
if(flage == 1)
if(flage == FALSE)
if(flage == 0)
正確使用:
if(flage)
if(!flage)
(6)應當將整形變數用“==”或“!=”直接與0比較。正確做法:
if(value ==0)
if(value !=0)
錯誤的做法:會讓人誤解是bool
if(value)
if(!value)
(7)浮點變數與零值比較,不可將浮點變數用“==”或“!=”與任何數字比較。無論是float還是double型別的變數,都有精度限制。所以一定要避免將浮點變數用“==”或“!=”與數字比較,應該設法轉化成>=或<=形式。假設浮點變數的名字為x,應當將
if(x == 0.0)//隱含錯誤的比較
轉換:
if((x>=-EPSINON)&&(x<=EPSINON))
其中EPSINON是允許的誤差(即精度)
(8)指標變數與0值比較。應當將指標變數寫成“==”或“!=”與NULL比較。
正確寫法:
if(p==NULL)//p與NULL顯示比較,強調p是指標變數
不要寫成
if(p==0)//容易讓人誤解p是整形變數
或者
if(p)//讓人理解為布林變數
迴圈語句效率
(1)提高迴圈體效率的基本辦法是降低迴圈體的複雜性。多重迴圈中,如果有可能,應當將最長的迴圈放在最內層,最短的迴圈放在最外層,以減少CPU跨切迴圈層的次數,如下圖:
(2)迴圈體有邏輯判斷的時候,提高效率的做法是將條件判斷放在迴圈外面。如果迴圈的次數不大的時候,提高的效率就不明顯,要是迴圈的次數比較大的話提高的效率就會明顯
(3)不可在for迴圈體內修改迴圈變數,防止for迴圈失去控制。
(4)建議for語句的迴圈控制變數的取值採用“半開半閉”寫法。
switch語句
(1)每個case語句的結尾不要忘了加break,否則將導致多個分支重疊,除非有意使多個分支重疊!
(2)不要忘記最後加個default,即使程式不需要default處理,以防程式出錯。
相關文章
- 正規表示式的基本語法
- 表示式與語句
- js正規表示式基本語法學習JS
- 語句和表示式有什麼不同
- SQL語句規範的寫法SQL
- 通過js正規表示式例項學習正規表示式基本語法JS
- 正規表示式基本規則
- SQL語句規範總結SQL
- 基本正規表示式概念
- Python的運算物件、運算子、表示式和語句Python物件
- Python中表示式與語句Python
- Linux中基本正規表示式Linux
- 正規表示式基本概念
- 從規範看賦值表示式的解析賦值
- Python學習(13)--Lambda表示式和switch語句的實現Python
- shell基礎 — 基本正規表示式
- 程式語言中表示式更優於語句
- 正規表示式-語法大全
- 匹配指定範圍整數正規表示式
- App設計的基本原則和規範APP
- GaussDB SQL基本語法示例-CASE表示式SQL
- Lambda表示式基本語法與應用
- mysql基本規範MySql
- VIM和正規表示式
- Java正規表示式的語法與示例Java
- PHP入門:書寫語法以及基本規範PHP
- Mysql-基本的規則與規範MySql
- 前端命名基本規範前端
- 2.基本規範
- 現代 ABAP 程式語言中的正規表示式
- c語言是如何解析表示式語句"2+3*4;"的?C語言
- java 正規表示式語法學習Java
- Oracle基本SQL語句OracleSQL
- TPCH模型規範、測試說明及22條語句模型
- 【正規表示式】常用的正規表示式(數字,漢字,字串,金額等的正規表示式)字串
- 《Think Python 2e》作業實現(二): 變數、表示式和語句Python變數
- rulex:Rust一種新的正規表示式語言Rust
- 網頁設計的基本規範網頁