C++程式語言的四個基本準則
C++程式語言的四個基本準則
一、最高準則:無二義性
無二義性是指:對於程式設計的每一個語句,計算機在執行的時候都只會有一種結果,不存在自相矛盾或多種可能;就像一句話,本身只有一種意思,不存在多義性。
準則的具體體現:
(1)運算子的優先順序與結合性
優先順序是為了消除諸如3+4*5 的表示式,是應該被當作 (3+4)5 還是3+(45)的二義性而設定的規則。
結合性是對於優先順序相同的運算子,規定運算順序(結合方向)設定的原則;如算術運算子的結合方向是“自左向右”,而賦值運算子是“自右向左”。
(2)識別符號不能以數字開頭
這是為了方便區分變數和常量,從而便於編譯器編譯。如2E3這樣的字元既可以表示變數名,也可以表示常量。
(3)貪心規則
貪心法則就是,讀了一個字元之後,C++會再讀一個,看第二個字元和第一個字元合在一起能不能有意義,有意義的話就合在一起。
如i+++j
首先讀入i,然後讀入+。i和+合不成一個有意義的符號,沒法貪心,因此,i是一個單獨符號。
然後再讀入一個+,兩個+可以合成一個++,可以貪心,然後就通過貪心法則合成一個++。
再讀入一個+,三個+沒法合成有意義符號,因此,兩個+號變成一個單詞, 再讀入j,+與j合不成一個有意義符號,因此,第三個+ 單獨成一個單詞。
二、第二高準則:高效性
(1)陣列下標0索引
陣列是一段連續bai的空間,要求a[i]就是求它du的地址,然後找到zhi它。如果從0開始,則a[i]的地址= 首地址 +
i*每個資料所佔的長度;如果從1開始,則a[i]的地址= 首地址 + (i-1)*每個資料所佔的長度。
對於計算機而言,如果從1索引,就要多做一次減法,而從零不需要,這樣就提高了效率。
(2)邏輯短路
邏輯短路規則為對於表示式a&&b 當a為假時,b不會計算
三、第三準則:合乎日常習慣
程式設計語言最終是給程式設計師使用的。一套不合乎日常習慣的規則,會給程式設計師的使用帶來極大的不便性,因為日常習慣的慣性是極其強大的。這樣會迫使程式設計師放棄該語言。
如許多函式名都是常用單詞的簡寫
四、補充準則:相似相同規則
指標本身為變數,因此,變數該有的行為,指標同樣都會有,只會多不會少。 變數有八種初始化形式,因此,指標必然也會有八種初始化形式:
變數初始化: 指標初始化 ① int i=5;
① int *p=&a; ② int i(5); ② int
*p(&a); ③ int j=i; ③ int *q=p; ④ int j(i); ④ int *q§; ⑤ int j{i};
⑤ int *q{p}; ⑥ int j={i}; ⑥ int *q = {p};
相關文章
- C++程式語言的四個準則C++
- 程式語言的六個標準
- C++程式語言中的四個除錯技巧C++除錯
- 聊聊C語言/C++—程式和程式語言C語言C++
- HTML 和 CSS 程式碼結構的基本準則HTMLCSS
- C語言:一個能自動生成小學四則運算題目的程式C語言
- 程式語言基本組成
- 複數的四則運算(C語言實現)C語言
- C語言程式設計入門之--第四章C語言基本資料型別C語言程式設計資料型別
- C++ 的基本語法C++
- 【自制程式語言】1 - 基本語句(1)
- C++語言的15個晦澀特性C++
- 如何使用C++語言列印一個平行四邊形 - NOIP基礎C++
- C++的函數語言程式設計C++函數程式設計
- Perl語法的基本規則
- C語言程式設計基本規範C語言程式設計
- 程式語言基本組成:控制結構
- C++基本語法C++
- 第一篇 C/C++基本語言型別C++型別
- 一、程式語言簡介與C++C++
- C語言學習四 — 函式與作用域規則C語言函式
- 從開源專案學習 C 語言基本的編碼規則
- 使用者介面設計中10個可用性的基本準則
- Swift 語言的基本運算子Swift
- GO語言————4.2 Go程式的基本結構和要素Go
- C語言(C++語言)中##(兩個井號)和#(一個井號)用法[轉]C語言C++
- 程式語言基本組成:資料結構資料結構
- 程式語言基本組成:組織結構
- R語言基本技巧R語言
- 平面設計中的四項基本原則
- 2017.11程式語言排行:Java第一Python第四,世界上最好的語言兩個零JavaPython
- Java語言與C++語言的差異總結JavaC++
- jsx基本語法規則JS
- C語言高效程式設計的的四招技巧[轉]C語言程式設計
- 【01】視C++為一個語言聯邦C++
- C語言第一個程式C語言
- 標準c語言03C語言
- - C語言標準庫C語言