C 學習筆記系列(一)

2021-09-23 10:35:32 字數 2526 閱讀 4207

第一章

1、在c++中,可不顯示地指定變數型別,使用關鍵字auto

例如:auto flag=true。這裡將指定變數flag的型別交給了編譯器,編譯器會自動確定變數應為什麼型別。

ps:auto時必須將變數初始化,否則會出現編譯錯誤。

2、使用enum來定義變數只有一組特定的取值

例如:

enum rainbowcolors

;

rainbowcolors myworldscolor = blue; #宣告了常量myworldcolor,這個常量只能取rainbowcolors的值,宣告列舉常量時,編譯器把列舉值(voilet等)轉化為整數,每個列舉值都比前乙個大1.可以自己指定初始值,沒有指定的話初始值為0.

3、為減少記憶體的占用,可以用std::vector來定義動態陣列。需要包含標頭檔案#include

例如:簡要**如下

#include#includeusing namespace std;

int main()

4、c++字串的使用

需要使用標頭檔案#include才能使用string 變數名定義字串變數。

例如:

#include#includeusing namespace std;

int main()

5、語句、運算子

要將一條放到兩行中,可在第一行末尾新增反斜槓(\),也可將字串字面量分成兩個,如下例:

cout << "hello \

world" << endl;

或是:cout << "hello"

"world" 《使用字尾運算時,先將值賦給左值,再將右值遞增或遞減,左值都為執行前的舊值;使用字首運算就相反,先將值遞增或遞減,再將結果賦給左值。

++變數名 一般優於 變數名++

#includecin>>inputnum;

bitset<8> inputbits (inputnum) #轉換為二進位制

bitset<8> bitwisenot = (~inputnum) #按位運算子not

bitset<8> bitwiseand = () #and運算

bitwiseor = ()

bitwi***or=() #異或運算

6、控制流程式

字元初始化一般用:

char userselection= '\0;

死迴圈一般用來檢測作業系統usb介面是否連線了裝置,只要系統一直在執行,這種活動就不會停止。

乙個函式可以包含多條return語句

7、函式過載

名稱和返回型別相同,引數不同的函式稱為過載函式。在應用程式中,如果使用不同的引數呼叫具有特定名稱和返回型別的函式,過載函式將很有用。

按引用傳遞函式

即不是以返回值的方式而是以引用引數的方式提供給函式,如下所示:

#include#includeusing namespace std;

const double pi = 3.1416;

void area(double radius, double &result)

int main()

8、內聯函式

當定義乙個函式時,執行函式的開銷有可能非常高,所以使用關鍵字inline可以節省記憶體空間,將函式的內容直接放到它呼叫的地方,以提高**的執行速度。但是應盡量少用關鍵字inline。

inline long doublenum(int inputnum)

9、lambda函式

lambda函式語法如下:

[optional parameters] (parameter list)

**如下:

#include#include#includeusing namespace std;

void displaynums(vector&dynarray)

); cout << endl;

}int main()

); displaynums(mynumbers);

return 0;

}

當定義函式提供形式引數時,要將所有有預設引數值的引數放在列表末尾,要麼給所有引數都指定預設值。

c 學習筆記系列 二

由於最近在上專案吧,時間比較緊張,所以也就沒有太多時間來及時更新部落格了。但是我會吧c 學習筆記系列給寫下去。說實在話,我也在考慮該如何寫這個話題?原因是c 太大了,包含的東西太廣太深,隨便乙個知識點都足夠讓人折騰一陣子了,然而這些知識都是可以在網上搜尋到的。所以我決定換一種方式以問答的形式來體現。...

C 學習系列筆記(二)

10 指標 includeusing namespace std int main 使用解除引用運算子 星號 訪問指向的資料,如 pinteger 訪問資料 將sizeof 用於指標時,結果與指標指向的變數型別無關,而是取決於使用的編譯器和針對的作業系統。動態記憶體分配 使用new來動態的分配新的記...

機器學習系列筆記(一)

通俗來講,機器學習是一門致力於研究如何通過計算的手段,利用資料來改善系統自身的效能的學科。在進行機器學習之前,我們應該提前收集一批資料作為計算機的 經驗 這組資料的集合稱為資料集 其中每條記錄是關於乙個事件或者物件的描述,稱為示例 在事例中反映物件的某方面屬性稱為屬性或特徵 特徵的值稱為屬性值 所有...