


下載本文檔
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、sizeof 分析1.在32位系統(tǒng)中不同類型的內(nèi)存分配1.1基本類型cpp代碼Tj1. sizeof( int);/ = 42. sizeof( double);/ = 83. sizeof( char);/=14. sizeof( bool);/=15. sizeof( short);/=26. sizeof(float);/ = 47. sizeof( long);/=41.2指針指針在32位系統(tǒng)中占4個(gè)字節(jié)Cpp代碼一1. sizeof( int *);/ = 42. sizeof( double *);/ = 43. sizeof( char *);/ = 41.3數(shù)組數(shù)組的sizeo
2、f返回整個(gè)數(shù)組所占的字節(jié)數(shù),即(數(shù)組元素個(gè)數(shù)x每個(gè)元 素所占字節(jié))。Cpp代碼一1. int ai = 1,2;2. sizeof(ai);/ = 2*4 = 8常量字符串與字符數(shù)組的內(nèi)存分配方式相同Cpp代碼-1. char ac = "abed" 注意數(shù)組末尾的字符串終結(jié)符'0'2. sizeof(ac);/ = 5*1 = 53. sizeof("abcd");/ = 5*1 = 5數(shù)組和指針?biāo)嫉淖止?jié)數(shù)不同,應(yīng)注意區(qū)分1. int *pi = new int10; 這是指針2. sizeof(pi);/ = 43.3. int a
3、i10;4. int *p = ai;這還是指針5. sizeof(p);/ = 47.6. double* (*a)36;/看成(double *) (*a)36,即一個(gè) 3 >6 的二維數(shù)組,數(shù)組元素為指針,指向double類型。7. sizeof(a);/ = 4,a為指向上述二維數(shù)組的指針8. sizeof(*a);/ = sizeof(double *)*3*6 = 72 ,*a 表示上述二維數(shù)組9. sizeof(*a);/ = sizeof(double *)*6 = 24 ,*a 即 *(*a),表示 double*6,是元素為double指針的一維數(shù)組。10. size
4、of(*a);/ = sizeof(double *) = 4 ,表示上述一維數(shù)組中的第一個(gè)元素,元素類型為double指針。11. sizeof(*a);/ = sizeof(double) = 8,表示上述數(shù)組首元素指向的double 類型。函數(shù)形式參數(shù)中的數(shù)組會(huì)蛻變?yōu)橹羔?,原因是?shù)組參數(shù)“傳址調(diào)用”, 調(diào)用者只需將實(shí)參的地址傳遞過(guò)去。有一種情況例外,那就是參數(shù)是指向數(shù)組 的指針。1. void acf(char p3)參數(shù)類型是int,表示指向int的指針2. 3. sizeof( p );/ = 44. 5. void aif( int p)參數(shù)類型是int,表示指向int的指針6.
5、7. sizeof( p );/ = 48. 9. void pif( int (*p)6) /參數(shù)類型是int (*)6,表示指向int數(shù)組的指針10. 11. sizeof( p);/ = 412. sizeof( *p );/ = sizeof(i nt)*6 = 2413. 14. void ppf( int *p6)/參數(shù)類型是int *,表示指向int指針的指針15. 16. sizeof( p );/ = 417. sizeof( *p );/ = 418. 1.4.類和結(jié)構(gòu)體的內(nèi)存分配??疹惢蚩战Y(jié)構(gòu)體占一個(gè)字節(jié)Cpp代碼®1. class CEmpty ;2. siz
6、eof(CEmpty); / = 13.3. struct SEmpty ;4. sizeof(SEmpty); / = 1非空類和結(jié)構(gòu)體所占字節(jié)為所有成員占字節(jié)的和,但是不包括成員函數(shù) 和靜態(tài)成員所占的空間。Cpp代碼1. class Clnt : public CEmpty 2. int i;3. ;4. sizeof(C Int); / = 4;5.5. class CFunc 6. void f() 7. ;8. sizeof(CFu nc); / = 1;10.9. struct Sint: SEmpty 10. static int i;11. ;12. sizeof(SInt);
7、 / = 1;字節(jié)對(duì)齊為了加快計(jì)算機(jī)的取數(shù)速度,編譯器默認(rèn)對(duì)內(nèi)存進(jìn)行字節(jié)對(duì)齊。對(duì)結(jié)構(gòu)體(包 括類)進(jìn)行字節(jié)對(duì)齊的原則是:的大小所整除;offset )都是成員大小的整數(shù)倍,如有需要);1 )結(jié)構(gòu)體變量的首地址能夠被其最寬基本類型成員2)結(jié)構(gòu)體每個(gè)成員相對(duì)于結(jié)構(gòu)體首地址的偏移量( 編譯器會(huì)在成員之間加上填充字節(jié)( in ternal addi ng3)結(jié)構(gòu)體的總大小為結(jié)構(gòu)體最寬基本類型成員大小的整數(shù)倍,如有需要編譯器會(huì)在最末一個(gè)成員之后加上填充字節(jié)(traili ng paddi ng)。Cpp代碼1. struct SBytel2. 3. double d; / 偏移量 074. char j; / 偏移量 85. int a; /偏移量1215,由于9不能整除4,故先填充9116. ;7. sizeof(SByte1); / = 168.8. struct SByte29. 10. char j;
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 健康行業(yè)課件制作
- 華師大版信息技術(shù)課件
- 邯鄲抽考數(shù)學(xué)試卷
- 河西一模高三數(shù)學(xué)試卷
- 衡水中學(xué)6月數(shù)學(xué)試卷
- 中國(guó)彩條布行業(yè)市場(chǎng)發(fā)展前景及發(fā)展趨勢(shì)與投資戰(zhàn)略研究報(bào)告(2024-2030)-20241228-144503
- 中國(guó)自卸式垃圾車行業(yè)投資分析及發(fā)展戰(zhàn)略研究咨詢報(bào)告
- 2018-2024年中國(guó)森林防火培訓(xùn)中心未來(lái)趨勢(shì)預(yù)測(cè)分析及投資規(guī)劃研究建議報(bào)告
- 向人防辦申請(qǐng)報(bào)告
- 蒲城縣基層干部管理辦法
- 生產(chǎn)調(diào)度員培訓(xùn)課件
- 采購(gòu)協(xié)議與合作框架構(gòu)建
- 成人住院患者營(yíng)養(yǎng)不良評(píng)定-根據(jù)GLIM標(biāo)準(zhǔn)制定
- 射頻在航空航天中的應(yīng)用
- 注塑上下模培訓(xùn)-
- 鋼與混凝土組合結(jié)構(gòu)課件
- 二升三數(shù)學(xué)暑假作業(yè)
- 職業(yè)衛(wèi)生知識(shí)競(jìng)賽題
- 鋼結(jié)構(gòu)接水盤(pán)施工方案
- 酒店住宿水單標(biāo)準(zhǔn)模板
- 新生兒硬腫癥的護(hù)理查房
評(píng)論
0/150
提交評(píng)論