C++ Primer Plus 第03章 數據處理 學習筆記
第三章 數據處理
1. 簡單變量
程序必須記錄3個基本屬性
信息將存儲在哪里
要存儲什么值
存儲何種類型的信息
1.1 變量名
C++變量命名規則
變量名只能使用字母字符、數字和下劃線(_)。
名稱的第一個字符不能是數字。
區分大小寫
不能將關鍵字用作名稱
以兩個下劃線或下劃線和大寫字母開頭的名稱被保留給實現(編譯器及其使用的資源)使用。以一個下劃線開頭的名稱被保留給實現,用作全局標識符。
對名稱長度沒有限制,名稱中所有字符都有意義。
? 小Tips:變量名建議使用 駝峰式 的格式。例如:myEyeTooth 或 my_eyes。
1.2 整型
整數:沒有小數部分的數字。如:77、-120等。
C++中,不同的整型使用不同的內存量,使用的內存越大,可表示的數值范圍越大。
整型分為:
正值
負值
1.3 整型short、int、long和long long
計算機內存的基本單元:位(bit) 。
字節(byte) 通常是8位的內存單元。字節指的是描述計算機計算機內存量的度量單位。
單位換算:
1 KB = 1024 byte 1 MB = 1024 KB
在C++種也確保了類型的最小長度
short 至少 16位
int 至少和 short一樣長
long至少32位,且至少與int一樣長
long long 至少 64位,且至少與long一樣長。
要知道系統中整數的最大長度,可以使用C++工具來檢查類型的長度。
首先使用sizeof運算符返回類型或變量的長度,單位為字節。
climits中包含符號常量(預處理方式)來表示類型的限制。
#include 成員函數cout.put() ———— C++ OOP概念中的成員函數,成員函數歸類所有,描述了操作數據的方法。 有些字符無法通過鍵盤輸入到程序中,所以C++提供了特殊的表示方法 ----> 轉義序列。常見的如下 ? 小Tips:在可使用數字轉義序列或符號轉義序列(如 ? 小Tips:在可使用數字轉義序列或符號轉義序列(如\0x8和\b)時,應使用符號序列。
數字表示與特定的編碼方式(如ASCII碼)相關,而符號表示適用于任何編碼方式,其可讀性也更強。
將轉義序列作為字符常量時,使用單引號,如果放在字符串時,則使用雙引號
cout << endl; /*使用endl重起一行*/ cout <<'\n'; /*字符串常量*/ cout <<"\n"; /*字符串*/
1.8 Bool類型
來源于數學表示法。
C++將非零值表示為true,將零表示為false。
bool is_ready = true;
2. const限定符
符號名稱指出了常量表示的內容。
const關鍵字來修改變量聲明和初始化。常量被初始化后,其值就被固定,編譯器將不允許再修改該常量的值。
將名稱的首字母大寫,以便提醒是個常量,可便于閱讀性增強。如果是變量名全大寫,則使用 #define 。
創建常量的通用格式為:
const type name = value;
例如:
const int Months = 12; // 一年有12個月
如果在聲明const常量時沒有提供值,該常量的值將是不確定,且無法更改。
3. 浮點數
浮點數就是表示小數點部分的數字。計算機將值分為兩部分存儲,一部分表示值,另一部分則用于對值進行放大或縮小。
3.1 為什么叫浮點數?
因為小數點可移動,所以稱之為“浮點數”。
表示方法:
3.14159 10.0
例如:
3.45E6 3.45與10的6次方相乘,E6代表的是10的6次方。
E適合表示非常大和非常小的數。
E表示法確保數字以浮點格式存儲,即使沒有小數點。
指數為負數意味著除以10的乘方,而不是乘以10的乘方。
8.33E~4表示:8.33 / 10的4次方,也就是:0.000833
技巧:
d.dddE+n ———— 將小數點向右邊移動n位
d.dddE-n ———— 將小數點向左邊移動n位
3.2 浮點數類型
根據可以表示的有效數位和允許的指數最小范圍,可以分為3種浮點數類型:float、 double和long double。
3.3 浮點常量
在書寫浮點常量的時候,加 后綴 , 以便區分何種類型,從而確定可表示的數值范圍。例如:
3.14f // float類型 3.14L // 長浮點型long double
3.4 浮點數優缺點
兩個優點:
表示整數之間的值
有縮放因子
缺點:
浮點數運算的速度通常比整數運算慢,而且精度完全降低。
4. C++算術運算符
五種基本運算符進行基本的算術運算。
加(+)、減(-)、乘(*)、除(/)、求模(%)
運算符的優先級和數學中的優先級類似。
4.1 除法運算符問題的總結
除法運算符(/)的行為取決于操作數的類型。
如果兩個操作數都是整數,則C++將執行整數除法。把結果的小數部分丟棄,使最后的一個結果是一個整數。
如果其中有一個(或兩個)操作數是浮點數,則小數部分將保留,結果為浮點數。
#include 運算符重載:使用相同的符號進行多種操作。 4.2 求模運算符 求模(求余):返回整數除法的余數。 與整數除法結合,適用于解決要求講一個量分成的整數單元的問題 ??注意: 浮點數沒有求模運算 。 4.3 類型轉換 類型轉換的規則 將一種算術類型的值賦給另一種算術類型的變量時,C++對值轉換為接收變量的類型。 表達式中包含不同的類型時,C++對值進行轉換 將參數傳遞給函數時,由函數原型控制,C++對值進行轉換 數值轉換中存在的潛在問題 類型的強制轉換 強制轉換本身不會修改變量本身,而是創建一個新的、指定類型的值。 強制轉換的通用格式如下: (typename) value //來源于C語言 typename (value) // C++ 4.4 C++11中的auto聲明 在初始化聲明中,如果使用關鍵字auto 時,而不指定變量的類型,編譯器將把變量的類型設置成與初始值相同。 auto n = 100; /*自動設置為int類型*/ auto x = 1.15; /*自動設置為double類型*/ 第三章 學習記錄筆記完畢 C++ 面向對象編程
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。