c++基本型別筆記

ppjunSpirit發表於2018-06-04

整型

int 根據取值範圍可以分為 短整數,有符號短整數,無符號短整數,有符號整數,無符號整數,長整數,有符號長整數,無符號長整數。 字尾 L 或者 l 代表長整數,字尾 U 或者 u 代表無符號整數

95476L //長整數
37821U  //無符號整數
899888UL  //無符號整數
複製程式碼

bool

邏輯型別分別有 true 和 false,而他們分別輸出為 1 和 0

enum

列舉型別是一種使用者自定義的資料型別,用關鍵字 enum 來定義。

enum colour {red, yellow, white}
void main{
    colour apple =red;
    cout << apple << endl;
}
//輸出0
複製程式碼

浮點型

浮點型又稱實型,就是我們經常說的是實數。浮點數有整數和小陣列成.比如

13.89 .638 -888 //都是正確的小數
複製程式碼

還可以科學計數法用 E 或者 e 來表示,比如

12E8 //12 * ( 10 的 8 次方)
.12e-3  //0.12 * (10 的 -3 次方)
複製程式碼

浮點數有三種,分別是單精度浮點型 float,雙精度浮點型 double ,長雙精度浮點型 long double

字元型

字元型的標識是 char 資料的值用一對單引號括著陽光字元,比如 ‘A’, '1', ',' ,'\n' ,'\r' 除了用字元表示字元型別資料,還可以用 ASCII 的八進位制數值,十六進位制要加反斜槓,表示把他的值換成字元 比如:

'\101' '\x41'  //表示'A'
 '\12' '\x0A' '\n'//表示換行
 '\0' //空字元
複製程式碼

c++ 沒有把字串昨晚基本型別,字串常量是用雙引號括著,以陣列形式存放, "name","2002"

宣告變數

int a ,b ,c;

double x=0;

x=3.21 在程式裡面一個變數被賦值後,知道再次被賦值,值才會改變。

變數訪問

根據變數名來訪問,進行賦值,演算法運算。 通過地址來獲取變數, 用& 加上變數名獲取 變數地址 , 然後 用 * 加上變數地址 獲取變數 進行操作, &a 獲取 a 的地址, *(&a) 根據 a 的地址獲取 a 的變數。

int a=10;
cout << &a << endl;//輸出a地址
cout << *(&a)<< endl;//根據a地址獲取a物件的值
複製程式碼

引用

c++允許物件建立別名,用 & 來連線別名和 真名

    int a=255;
    int *pa;
    int &ra=a; //ra 是a 的別名
    pa=&a; //獲取a的地址,賦值給pa 
複製程式碼

常量和約束訪問

const 修飾的變數不允許修改,只做可讀物件,又叫做常物件

const double PI = 3.1415;
複製程式碼

指向常量的指標

寫作型別 const *指標,*貼近變數名就是長指標 int var=35; const int *P1_const;//定義常量指標 P1_const=&var;//賦值指標 var=*P1_const+*P1_const; //根據指標地址改變 變數值 cout <<var<<endl; //輸出70

指標常量

寫作 型別 *const 指標,*貼近const就是指標常量 int var1=35; int var2=350; int *const P1_const=&var1;//初始化給指標賦值就不可以修改了 P1_const=&var2;//錯誤的,只能通過對變數重新賦值

指向常量的指標常量

指標本身和所指物件的值在定義之後只能讀取,不能寫,定義形式為 const 型別 *const 指標,結合了上面兩種的特點.

 int var=100;
 const int *const p=&var
複製程式碼

常引用

冠以 const 定義的引用,將約束物件用別名方式訪問時為只讀,定義形式為 const 型別 & 引用名=物件名

int a=10;
const int & ra =a; 
複製程式碼

算術運算子

自增和自減

int a1=0,b1=0,i=0;
a1=++i;// al=1 i =1
b1=i++; //b1=1 i =2
複製程式碼

++i 是前置式,先自增 然後把i的值賦值給a1 i++ 是後置式,先讀出 i 的值賦值給 b1 再自增。

型別強轉

也是用(int)x+y

條件表示式

運算元1 ? 運算元2 : 運算元3 ,形如 a+b>3?1:2

而複雜點的有 a>b?a>c?a:c:b>c?b:c,化簡為 (a>b)?(a>c?a:c):(b>c?b:c)

逗號表示式

表示式1,表示式2,表示式3 由三個互不相干的表示式組成,僅僅是執行順序不同, x=(a=3,2*6) 最後 x=12

輸入和輸出

獲取鍵盤輸入的值,我們可以用cin>>x; 獲取兩個值的話用cin>> x>>y; 如此類推。

在控制檯輸出的話,我們用cout >>"">>endl;這是最常用。 endl就是換行的意思。

相關文章