測量普通變數
被測量value
char
1short
2int
4double8陣列
陣列內容個數+1(結尾有「\0」)
傳入函式的陣列
4,是乙個指標,指向這個陣列
測量類物件
被測量value空1
char
1,位元組對齊
short
2,位元組對齊
int4,位元組對齊
double
8,位元組對齊
普通函式
不佔位元組
幾個虛函式
有乙個指向虛函式表的指標,只占用乙個指標,32位機器是4
靜態成員變數
不佔位元組,共享同乙個靜態儲存區,不在每乙個例項中
一次虛擬繼承
4,指向父類指標
測量聯合體union
兩點原則:
1. 等於占用空間最大的乙個成員的大小;
2. 最大值需要位元組對齊,等於最小成員的倍數
被測量value空1
char
1char[13]
13short
2int
4,位元組對齊,安照union裡面最小位元組的倍數來對齊。
double
8,位元組對齊,安裝union裡面最小位元組的倍數來對齊。
參考推薦
參考來自《c++程式設計師面試秘笈》面試題13到面試題20。
關於計算機記憶體什麼是**區、常量區、靜態區(全域性區)、堆區、棧區,很好的乙個部落格推薦:
C 中sizeof用法總結
1.sizeof 簡介 sizeof是乙個關鍵字,不是乙個函式,其作用是返回乙個物件或者型別所佔的記憶體位元組數。msdn上的解釋為 the sizeof keyword gives the amount of storage,in bytes,associated with a variable ...
CPP複習總結
1.cstringstrstr strlwr strupr 2.呼叫複製建構函式的幾種情況 乙個新物件被另乙個已經存在的同型別物件用以初始化 當乙個物件作為實參傳遞給函式形參時要呼叫複製建構函式,函式返回時自動呼叫其析構函式 在函式返回乙個物件時呼叫複製建構函式。3.靜態資料成員初始化 資料型別 類...
sizeof使用中的幾個誤區總結
例如 char ss2 0123456789 sizeof ss2 結果為11,而不是10 字元陣列ss2中包含隱含的 0 也算乙個字元,佔乙個位元組,所以ss2的總的大小為11位元組。結構體的sizeof涉及到位元組對齊問題。為什麼需要位元組對齊?計算機組成原理教導我們這樣有助於加快計算機的取數速...