1.sizeof("hello") = 6; 放入常量區,編譯器不用頻繁讀取記憶體
2.sizeof(型別),只關心型別而不關心內容:int i = 0; sizeof(1/i) = 4; 編譯執行正常
3.只有有型別的指標才能通過指標值確定指標指向的內容
4.陣列的引用 int (&p)[10] = int a[10]; 不使用
5.void *p; 只知道指標位址不知道指標型別,無法確定變數,可以強制轉為相應型別
6.等待一秒的函式實現:
#include void waitaminite()
7.cout輸出有緩衝不是立即輸出,cerr立即輸出或者,cout<<"hello"<8.setw(),設定輸出寬度;right靠右;setfill('0'),設定寬度填充字元:
#include cout<
9.vi中替換使用::% s/舊串/新串/g,替換全文;:%^, $ s/old/new/g,替換從行首到行尾;
10.pwd,當前工作目錄
11.倒計時程式:
#include #include #include using namespace std;
class clock
void tick()
}} void show()
};
15.初始化列表不能初始化陣列和結構變數
16.void f(int i = 0); void f();編譯錯誤
17.類物件呼叫構造的順序為:先全域性變數,之後按順序;注意static只是整個程式執行期間存在呼叫構造不優先
18.類中先執行成員建構函式,再執行本身建構函式
19.由於全域性變數的構造在main函式之前,所以可以在main函式之前做一些操作
給定一陣列a[n],我們希望構造陣列b [n],其中b[j]=a[0]*a[1]…a[n-1] / a[j],在構造過程中,不允許使用除法:
要求o(1)空間複雜度和o(n)的時間複雜度;
除遍歷計數器與a[n] b[n]外,不可使用新的變數(包括棧臨時變數、堆空間和全域性靜態變數等);
實現程式(主流程式語言任選)實現並簡單描述。
#include using namespace std;
void fun(int a, int b, int len)
for (int i = len - 1; i > 0; --i) }
void show(int b, int len)
cout<}int main()
; int b[sizeof(a)/sizeof(a[0])] = {};
fun(a, b, sizeof(a)/sizeof(a[0]));
show(a, sizeof(a)/sizeof(a[0]));
show(b, sizeof(a)/sizeof(a[0]));
system("pause");
return 0;
}
快速入門C 08 繼承
類的繼承 繼承機制使得我們可以建立乙個類的堆疊層次結構,每個子類都將繼承他的基類裡定義的方法和屬性。基類必須在子類之前初始化!訪問控制 就是c 提供了一種用來保護類裡的方法和屬性的手段。保護即是對誰可以呼叫某個方法和訪問某個屬性加上乙個限制。public 可以被所有 訪問 protected 只能由...
c 動態陣列構造及應用
檔名稱 arrayclass.h 功能 自定義陣列型別標頭檔案 用於動態陣列應用,char型別指標陣列 by adengou 2011.8.13 檔案頭 ifndef array class define array class include include ifndef null const i...
C語言 08 陣列
1.計算機中的記憶體是以位元組為單位的儲存空間。記憶體的每乙個位元組都有乙個唯一的編號,這個編號就稱為位址。凡存放在記憶體中的程式和資料都有乙個位址,也就是說,乙個函式也有自己的記憶體位址。char a a a的ascii值為65 int b 66 在16bit編譯器環境下,系統為a b分別分配1個...