1.指標大小為4個位元組
2.結構體內的元素長度都小於處理器的位數的時候,以最長的資料元素作為對齊單位
如果結構體內存在長度大於處理器位數的元素,那麼就以處理器的位數為對齊單位
3.注意位址對齊
4.static 靜態變數存放在全域性資料區,sizeof不會計算它。
5.
char * s="0123456789";
//sizeof(s)=4
//sizeof(*s)=1 *s是第乙個字元
char s="0123456789";
//sizeof(s)=11;
//sizeof(*s)=1
//strlen的引數只能是char *
6.對函式使用sizeof,在編譯階段會被函式返回值的型別取代
7.sizeof(string)=4
8.
char var[10];
int test(char var)
//函式返回值為4
9.乙個空類所佔空間為1,多重繼承的空類所佔空間還是1,但是虛繼承的類大小為4;
10.關於內聯函式
內聯函式和普通函式相比可以加快程式執行的速度,因為不需要中斷呼叫。在編譯的時候內聯函式直接嵌入到目標**中。
inline一般用於一下情況
(1)重複呼叫
(2)沒有for while switch語句
C C 知識回顧 指標
1 非空的區別。引用不能為空。2 可修改區別。引用一旦被初始化,就會一直指向初始化的物件。3 合法性區別。在程式設計時,使用指標之前應該檢測其是否為空值。4 應用區別。指標多用於可能會不指向任何物件的情況 int f int int int f是乙個函式指標,它指向引數是兩個int的函式,該函式的返...
C C 知識回顧 Lambda
它是第十乙個希臘字母,乙個擁有失意 無奈 孤獨 低調等含義的流行符號,也指示一款稱為 半條命 的遊戲。不過,這次我所講的是 c 中的 lambda。lambda 表示式,是一種簡化的匿名函式,可用於建立委託或表示式目錄樹。其次,你也可以將 lambda 表示式作為引數進行傳遞,或者將它作用於函式呼叫...
C C 知識回顧 繼承與介面
1.關於虛繼承 b繼承a,c繼承a,d同時繼承bc,則初始化d時將會產生兩個a。b虛繼承a,c虛繼承a,d同時繼承bc,則bc共用乙個a 2.關於多繼承的方法呼叫 class a class b class c public a,public b int main 3.在繼承的時候如果不指定publ...