引入這個標頭檔案可以檢視系統支援的字符集的情況,因為其中包含了一些資訊如:#define int_max 2147483647…..等等,這個表示int型別的最大表示範圍是-2147483648 ~~ 2147483647 的總共2^32個數。
int wrens(123);
//這樣的初始化唯一需要注意的是與函式區分,萬一你有乙個函式名和這個變數名字相同,而且還是接受int型引數....
也可以如下初始化:
int wrens;
int wrens2 = ;
//這顯得正經一點,不會和函式混淆
//但這是c++11中提出的新的做法,在g++下編譯時要加上 -std=c++11或 -std=gnu++11,否則會給你warning
這一點我之前寫過一片關於浮點型在計算機中儲存的方法,可以參考那篇文章:
這裡我們討論c++對於浮點數的一些規定:
float:至少32位
double:至少48位
long double:80,96或128位
浮點數在計算機中是分成三部分的:符號位+階碼位+有效數字位
以32位float為例子就是:符號1位:0/1 + 階碼位8位:-127~128 + 有效數字位23位:2^23
所以float能表示的數的範圍就是-(2^128) ~~ 2^128,又因為科學表示法總是1.***x,後面的***x有效數字用2^23中的數來表示,總共能精確到7位。也就是精確到7位的-(2^128) ~~ 2^128 中的數。
總結:
所以說要表示很大或者很小的數,就使用浮點型,因為是以指數來計算的。比如超過int型大小的數,像1000000000000000000000就可以這樣賦值,float temp = 1000000000000000000000.0,輸出它的話就是:1e+21
浮點數的優點:
1.可以表示整數之間的值
2.可以表示的範圍大的多
缺點:1.運算速度比整數慢,並且精度將降低
這裡知識點比較多,乙個個說。
1.未初始化的陣列,其值為以前駐留在該記憶體單元中的值。
所以一般使用陣列的時候,最好先進行一次清空,memset函式,自行man幫助。
2.注意雙引號和單引號的使用
char
var = "s";
//這樣的賦值語句是錯誤的
//1.首先"s"是乙個有效字元為s,佔位符為'\0'的字串,而var只是表示乙個單字元
//2.其次"s"由於c++中陣列自動隱式轉換的特點,它表示的是指向第乙個元素的指標了,也就是它表示的是第乙個元素的位址了
//應該這麼使用
char* var = "str";
cout<<*var
//輸出:s
3.兩個常用的陣列相關函式
sizeof() — 返回整個陣列的長度
strlen() — 返回儲存在陣列中的(有效)字串長度,除去』\0』
char ptr[4] = "str";
cout
</4//3
有什麼錯誤還請指出,謝謝 C primer plus筆記整理 04
常用的一些輸入方法 1.cin 2.cin.get 3.cin.getline 4.getline 5.getchar 這是最常用的輸入,可以同時接收幾個多個引數,並且它會自動過濾掉空白字元 tab,空格,換行 這也會使得多出來的輸入留在輸入流中,它只能截斷到需要的對應個數的引數 int a,b c...
C primer plus筆記整理 05
允許指定占用特定位數的結構成員 官方說法 類和結構可包含比整型型別占用更少儲存空間的成員,這些成員被指定為位域 語法 declarator constant expression 注意 1.其中declarator 是在程式中訪問的成員的名稱,它必須是整型型別 包括列舉型別 2.常數表示式指定結構中...
c primer plus學習筆記
1.變數名命名規則 重要的 1 有含義 2 只能用字母字元 數字和下劃線 3 第乙個字元不能是數字 4 區分大小寫 5 不能用c 關鍵字 2.整型 1 無符合型別不能表負值 2 char short 16 int short long 32,int 和longlong 64,long c 11 寬度...