国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發(fā)設(shè)計 > 正文

sizeof用法總結(jié)

2019-11-08 01:43:08
字體:
供稿:網(wǎng)友

A. 參數(shù)為數(shù)據(jù)類型或者為一般變量。例如sizeof(int),sizeof(long)等等。這種情況要注意的是不同系統(tǒng)系統(tǒng)或者不同編譯器得到的結(jié)果可能是不同的。例如int類型在16位系統(tǒng)中占2個字節(jié),在32位系統(tǒng)中占4個字節(jié)。

B. 參數(shù)為數(shù)組或指針。下面舉例說明.

int a[50]; //sizeof(a)=4*50=200; 求數(shù)組所占的空間大小int *a=new int[50];// sizeof(a)=4; a為一個指針,sizeof(a)是求指針 //的大小,在32位系統(tǒng)中,當然是占4個字節(jié)。

C. 參數(shù)為結(jié)構(gòu)或類。Sizeof應(yīng)用在類和結(jié)構(gòu)的處理情況是相同的。        但有兩點需要注意:        第一、結(jié)構(gòu)或者類中的靜態(tài)成員不對結(jié)構(gòu)或者類的大小產(chǎn)生影響,因為靜態(tài)變量的存儲位置與結(jié)構(gòu)或者類的實例地址無關(guān)。        第二、沒有成員變量的結(jié)構(gòu)或類的大小為1,因為必須保證結(jié)構(gòu)或類的每一個實例在內(nèi)存中都有唯一的地址。

       舉例:

Class Test{int a;static double c};//sizeof(Test)=4.Test *s;//sizeof(s)=4,s為一個指針。Class test1{ };//sizeof(test1)=1;

D. 參數(shù)為其他。下面舉例說明。

int func(char s[5]);{ cout<<sizeof(s); //這里將輸出4,本來s為一個數(shù)組,但由于做為函數(shù)的參數(shù)在傳遞的時候系統(tǒng)處理為一個指針, //所以sizeof(s)實際上為求指針的大小。 return 1;}sizeof(func(“1234”))=4 //因為func的返回類型為int,所以相當于求sizeof(int).

以上為sizeof的基本用法,在實際的使用中要注意分析gcc的分配變量的分配策略,這樣的話可以避免一些錯誤。


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 长丰县| 潞城市| 南京市| 林芝县| 黄陵县| 黄浦区| 乐都县| 通江县| 邯郸县| 永顺县| 沾益县| 黔西| 芷江| 南木林县| 东光县| 宁河县| 兰州市| 永仁县| 黄石市| 永嘉县| 九江市| 吴川市| 崇文区| 吕梁市| 东兰县| 唐海县| 南汇区| 青田县| 铁岭县| 巴彦县| 成武县| 鹤壁市| 天津市| 台中市| 泾阳县| 保定市| 万年县| 花垣县| 道孚县| 道孚县| 花垣县|