C++基礎知識部分筆記
一、第一個程式
1、c++標頭檔案的新標準: #include<iostream> (舊c++風格可以寫成 #include<iostream.h> 、 #include<cstdio>、 #include<cmath>等等。。在原c語言的標頭檔案都可以使用,只需要把.h去掉,前面加上c )
2、名稱空間: namespace c++的標準庫是 std
引用 using namespace std;可以使用輸入輸出cout/cin/end/endl。。。
不寫上一行程式碼,就要表明引用,如 std::cout<<" "<<std::endl;
3、c++輸入輸出的格式
int a;
輸入: cin cin>>a;
輸出:cout cout<<a;
endl 換行的作用
提醒:C++也相容C,所以在使用過程中,哪個方便用哪個,不用強制要求。
4、資料型別
資料型別 符號 位數 取值範圍
整形 int 32位 -2147483648~~2147483647
短整型 short 最多16位 -32767~32768
長整形 long 最少32
單精度浮點數 float 32位
雙精度浮點數 double 64位
字元型 char 8位
布林型別 bool 32位 false(0) 、true(非0)
字串 string
類 class
列舉 enum
結構 struct
聯合 union
5、編譯器編譯程式過程
test.c test.h main.c
(1)預處理:展開標頭檔案/巨集替換/內聯呼叫/去掉註釋/條件編譯 test.i main.i
(2)編譯:檢查詞法、語法,生成組合語言 test.s main.s
(3)彙編:轉成機器能看懂的二進位制碼 test.o main.o
(4)連結到一起生成可執行程式 a.out
二、c++新語法:引用和指標
引用:
引用不是定義一個新的變數,而是給一個已經定義的變數重新起一個別名
定義方式
資料型別 & 引用變數名 = 已定義過的變數名;
引用的特點:
1.一個變數可以要多個別名。
2.引用必須初始化。
3.引用只能在初始化的時候引用一次,不能改變為再引用的其他變數。
定義引用b,它就是a,所以給a賦值時,b==a的值,b的地址,也是a的地址,給b賦值時,情況一樣,定義引用c,c就是b,就是a,所以改變任意一個引用,原值和它的引用都會改,並且地址都是原值的地址.
注意事項:
1.原值用const修飾的,引用也必須用const。
2. 進行隱式轉換時,引用型別要加const,表示這個匿名、臨時變數具有常屬性。
使用場景:
1、引用做引數
void swap(int& a,int& b){
int temp=a;
a=b;
b=temp;
}
swap(a,b);
也可以交換兩數的值;
總結,和指標效果一樣。
2、應用做返回值
函式的返回值在全域性生成一個臨時變數,再拿出這個臨時變數.
在語法上,引用知識一個變數的別名,不需要開空間,可是在底層實現時,開闢空間存下了變數的地址。