C 學習筆記(2)

2021-07-28 23:51:34 字數 745 閱讀 5481

//定義

namespace

a;namespace

a};//系統會自動合併這兩個

//使用時在前面加上using namespace a;

//或者a::var來呼叫命名空間a中的變數和函式。

wchar_t雙位元組型變數,佔據2位元組,而char只佔據1位元組

wchar_t wc = l"中國";

setlocale(lc_all, "chs");//設定中文環境 如果沒有這項wcout什麼都不會輸出

wcout << wccout

<< wc << endl;//不能正確輸出

wprintf(wc);//wprintf也能用來輸出寬字元

兩種形式,const和#define

其中#define只是文字替換,不分配記憶體,且沒有資料型別。

const有資料型別,編譯器可以進行型別安全檢查,有些整合化的工具可以對其進行除錯。

const常量編譯器會為其在記憶體中建立乙個備份(真正的基礎資料型別會被編譯器放到符號表不分配記憶體空間),通過位址訪問到的是這個備份而不是原始的常量

把變數的取值限定在乙個有限的範圍

列舉型別賦值必須為整型

enum cities;

int _tmain(int argc, _tchar* argv)

C 學習筆記 2

ref 和out 都是是傳遞引用,out是返回值,兩者有一定的相同之處,不過也有不同點。使用ref 前必須對變數賦值,out不用。out的函式會清空變數,即使變數已經賦值也不行,退出函式時所有 out引用的變數都要賦值,ref引用的可以修改,也可以不修改。下面是使用 out和 ref進行陣列修改的例...

c 學習筆記 2

迴圈 while迴圈 計數控制迴圈 counter controlled loop 標記控制的迴圈 sentinel conrolled loop 在寫迴圈的過程中容易出現多一次或者少一次的錯誤 即差一錯誤 off by one error 計算減法 簡單 include include rand ...

c 學習筆記(2)

筆記 1.相同型別的類物件通過拷貝建構函式完成整個複製過程。2.編譯器會自動生成乙個拷貝建構函式,即預設拷貝建構函式,這個建構函式很簡單,僅僅使用老物件的資料成員的值對新物件的資料成員一一賦值。預設拷貝建構函式執行的是淺拷貝。3.在深拷貝的情況下,對於物件中的動態成員,就不能僅僅簡單的賦值了,而應該...