青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

轉載:Sizeof與Strlen的區別與聯系

strlen與sizeof的區別

1.sizeof操作符的結果類型是size_t,它在頭文件中typedef為unsigned int類型。
該類型保證能容納實現所建立的最大對象的字節大小。

2.sizeof是算符,strlen是函數。

3.sizeof可以用類型做參數,strlen只能用char*做參數,且必須是以''\0''結尾的。

4.數組做sizeof的參數不退化,傳遞給strlen就退化為指針了。

5.大部分編譯程序在編譯的時候就把sizeof計算過了 是類型或是變量的長度這就是sizeof(x)可以用來定義數組維數的原因
char str[20]="0123456789";//str是編譯期大小已經固定的數組
int a=strlen(str); //a=10;//strlen()在運行起確定
int b=sizeof(str); //而b=20;//sizeof()在編譯期確定

6.strlen的結果要在運行的時候才能計算出來,是用來計算字符串的實際長度,不是類型占內存的大小。

7.sizeof后如果是類型必須加括弧,如果是變量名可以不加括弧。這是因為sizeof是個操作符不是個函數。
?char c;
?sizeof c;//變量名可以不加括弧
?
8.當適用了于一個結構類型時或變量, sizeof 返回實際的大小,
?當適用一靜態地空間數組, sizeof 歸還全部數組的尺寸。
?sizeof 操作符不能返回動態地被分派了的數組或外部的數組的尺寸

9.數組作為參數傳給函數時傳的是指針而不是數組,傳遞的是數組的首地址,
如:
fun(char [8])
fun(char [])
都等價于 fun(char *)
在C++里參數傳遞數組永遠都是傳遞指向數組首元素的指針,編譯器不知道數組的大小
如果想在函數內知道數組的大小, 需要這樣做:
進入函數后用memcpy拷貝出來,長度由另一個形參傳進去
fun(unsiged char *p1, int len)
{
? unsigned char* buf = new unsigned char[len+1]
? memcpy(buf, p1, len);
}

我們能常在用到 sizeof 和 strlen 的時候,通常是計算字符串數組的長度
看了上面的詳細解釋,發現兩者的使用還是有區別的,從這個例子可以看得很清楚:

har str[11]="0123456789";//注意這里str大小因該大于等于11,應考慮'\0'在內,否則編譯器會報錯
int a=strlen(str); //a=10; >>>> strlen 計算字符串的長度,以結束符 0x00 為字符串結束。
int b=sizeof(str); //而b=11; >>>> sizeof 計算的則是分配的數組 str[11] 所占的內存空間的大小,不受里面存儲的內容改變。?

上面是對靜態數組處理的結果,如果是對指針,結果就不一樣了

char* ss = "0123456789";
sizeof(ss) 結果 4 ===》ss是指向字符串常量的字符指針,sizeof 獲得的是一個指針的之所占的空間,應該是長整型的,所以是4
sizeof(*ss) 結果 1 ===》*ss是第一個字符 其實就是獲得了字符串的第一位'0' 所占的內存空間,是char類型的,占了 1 位strlen(ss)= 10 >>>> 如果要獲得這個字符串的長度,則一定要使用 strlen

另外,下面的方法可以用于確定該靜態數組可以容納元素的個數:
int a[3]={1,2,3};
cout << sizeof a/sizeof ( typeid( a[0] ).name() );

posted on 2006-10-06 10:40 bo 閱讀(18378) 評論(3)  編輯 收藏 引用 所屬分類: Language

評論

# re: 轉載:Sizeof與Strlen的區別與聯系 2007-05-09 10:55 仄洛

歸納得挺不錯,謝謝。  回復  更多評論   

# re: 轉載:Sizeof與Strlen的區別與聯系 2007-05-09 11:04 仄洛

最后一個int a[3] = {1, 2, 3};
在32位機上,sizeof a 應該等于4×3 = 12吧。

sizeof 運算符是用來求內存容量字節的大小的。而strlen是用來求字符串實際長度的。如果int *p = a; sizeof(p)應該等于4咯。

謝謝。  回復  更多評論   

# re: 轉載:Sizeof與Strlen的區別與聯系 2012-04-17 20:43 0315

@仄洛
不錯 懂了  回復  更多評論   

<2025年9月>
31123456
78910111213
14151617181920
21222324252627
2829301234
567891011

導航

統計

常用鏈接

留言簿(4)

隨筆分類(23)

隨筆檔案(23)

URL

最新隨筆

搜索

積分與排名

最新隨筆

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            久久精品国产69国产精品亚洲| 亚洲国产成人精品久久| 久久女同互慰一区二区三区| 久久gogo国模啪啪人体图| 亚洲一区二区在线看| 一本色道久久99精品综合| 在线视频日本亚洲性| 亚洲免费视频网站| 久久全国免费视频| 欧美日韩在线视频一区二区| 国产伦精品免费视频| 一区在线播放| 一区二区三区产品免费精品久久75 | 亚洲精品少妇网址| 亚洲免费观看视频| 欧美在线精品免播放器视频| 欧美成年人视频网站| 一本色道久久综合亚洲精品婷婷| 欧美在线视频全部完| 欧美国产91| 韩国av一区二区三区| 99国产精品私拍| 久久一区二区三区四区| 一区二区高清视频| 狼狼综合久久久久综合网| 国产精品不卡在线| 亚洲裸体视频| 美女成人午夜| 亚洲一区久久久| 欧美日韩国产一区二区三区地区| 激情久久久久| 久久爱www久久做| 99re6这里只有精品| 久久久一本精品99久久精品66| 国产精品国产三级欧美二区| 91久久国产精品91久久性色| 久久精品道一区二区三区| 一本大道久久精品懂色aⅴ| 久久婷婷综合激情| 国产无一区二区| 亚洲免费视频在线观看| 亚洲精品乱码久久久久久按摩观 | 久久成人av少妇免费| 99精品国产高清一区二区| 欧美大片免费久久精品三p | 久久精品国产一区二区三区| 一区二区三区久久网| 欧美ed2k| 亚洲精品久久嫩草网站秘色| 暖暖成人免费视频| 久久久久国产精品一区三寸| 国产欧美日韩精品专区| 亚洲欧美日韩在线一区| 在线视频日韩精品| 国产精品日韩精品| 久久精品免视看| 久久久久久久久蜜桃| 国产婷婷精品| 亚洲视频一二区| 一区二区三区不卡视频在线观看| 欧美人与性动交cc0o| av成人手机在线| 亚洲毛片av| 欧美午夜精品理论片a级大开眼界 欧美午夜精品理论片a级按摩 | 久久久999国产| 99精品国产在热久久| 欧美精品福利在线| 在线亚洲伦理| 亚洲免费在线观看视频| 国产一区二区三区四区| 嫩草成人www欧美| 欧美高清在线精品一区| 一本色道久久综合亚洲精品不卡| 日韩图片一区| 国产片一区二区| 欧美成人精品| 欧美日韩在线精品一区二区三区| 新67194成人永久网站| 欧美一区二区视频在线观看| 亚洲第一福利社区| 91久久精品国产| 国产精品麻豆va在线播放| 久久精品国产99精品国产亚洲性色| 久久久久久久久岛国免费| 99精品国产福利在线观看免费| 亚洲在线免费视频| 91久久精品国产91久久| 一区二区激情小说| 一区二区三区在线视频播放| 亚洲理伦在线| 在线观看欧美精品| 一本色道久久综合| 亚洲国产精品久久久久久女王| 日韩视频免费观看高清在线视频| 国产一区二区三区四区老人| 亚洲国产日韩精品| 国产亚洲一区二区在线观看| 亚洲人成高清| 极品尤物久久久av免费看| 99这里只有精品| 亚洲国内自拍| 先锋亚洲精品| 亚洲永久网站| 欧美另类在线观看| 免费永久网站黄欧美| 国产女主播在线一区二区| 亚洲精品一二三| 伊人久久综合97精品| 亚洲一区二区在线视频 | 久久久久欧美| 国产精品日日摸夜夜添夜夜av | 久久精品五月| 欧美一区二区三区四区夜夜大片| 欧美精品一区二区视频| 欧美激情aaaa| 亚洲电影av在线| 久久久中精品2020中文| 久久久精品性| 国产亚洲精品久久飘花| 亚洲尤物视频网| 亚洲一区二区三区午夜| 欧美人与禽性xxxxx杂性| 亚洲国产精品久久久久秋霞影院| 伊人久久大香线蕉综合热线| 欧美在线视频一区二区| 久久精品一本| 国产综合自拍| 亚洲一区二区三区欧美| 亚洲一区免费观看| 亚洲一区二区在线免费观看视频| 欧美激情精品久久久| 亚洲二区视频在线| 亚洲人成高清| 欧美高清一区| 亚洲国产天堂久久综合网| 亚洲国产一区二区在线| 欧美成人资源网| 亚洲欧洲精品成人久久奇米网| 最新69国产成人精品视频免费 | 国产精品美女久久久久久免费| 亚洲老司机av| 午夜精品福利一区二区三区av| 国产精品欧美经典| 久久成人免费日本黄色| 免费视频一区二区三区在线观看| 亚洲精品1区2区| 欧美日韩一区自拍| 亚洲欧美一区二区激情| 久久久久在线观看| 91久久久久久久久| 欧美日韩午夜精品| 亚洲欧美中文另类| 欧美大色视频| 在线亚洲高清视频| 国产日韩亚洲| 欧美va亚洲va香蕉在线| 亚洲免费观看高清完整版在线观看熊| 亚洲素人在线| 国内精品久久久久久| 欧美jjzz| 午夜一区不卡| 亚洲国产天堂久久综合网| 亚洲欧美色婷婷| 亚洲国产精品一区二区第四页av| 欧美精品一卡二卡| 欧美一区二区精品| 亚洲人成毛片在线播放女女| 午夜精品视频网站| 亚洲激情一区二区三区| 国产精品久久久99| 免费av成人在线| 亚洲影院在线观看| 亚洲激情亚洲| 老司机精品导航| 亚洲女同同性videoxma| 亚洲精品国久久99热| 国产香蕉久久精品综合网| 欧美日韩高清免费| 老司机精品导航| 欧美亚洲免费电影| 亚洲黄色在线观看| 免费日韩精品中文字幕视频在线| 亚洲字幕在线观看| 日韩午夜激情av| 亚洲第一精品福利| 国产有码一区二区| 国产精品一区在线播放| 欧美精品一区二区三区蜜臀| 久久精品日韩欧美| 性18欧美另类| 亚洲一区二区三区精品在线| 亚洲国产另类 国产精品国产免费| 久久激情综合网| 午夜精品久久久久久久久久久久久| 最新国产成人在线观看| 伊人久久亚洲影院| 国产一区二区三区黄视频| 国产精品看片你懂得| 欧美日韩福利视频| 激情久久久久久|