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

轉載: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 閱讀(18379) 評論(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

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

<2007年5月>
293012345
6789101112
13141516171819
20212223242526
272829303112
3456789

導航

統計

常用鏈接

留言簿(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>
            欧美成人午夜视频| 久久手机精品视频| 国产精品一区二区你懂的| 欧美高清视频在线观看| 久久久久久久激情视频| 久久久精品一区二区三区| 久久激情网站| 久久综合伊人77777尤物| 久热精品视频在线观看一区| 久久午夜视频| 欧美激情一区在线| 欧美系列精品| 国产视频一区二区在线观看| 狠狠色狠狠色综合人人| 亚洲国产毛片完整版| 日韩一级免费| 羞羞视频在线观看欧美| 麻豆精品91| 亚洲精品中文字幕在线观看| 午夜欧美精品| 欧美成人免费全部观看天天性色| 欧美精品一区二区在线观看| 国产精品看片资源| 伊人成人在线| 中文成人激情娱乐网| 久久久久一区二区| 亚洲日本一区二区三区| 一本一道久久综合狠狠老精东影业| 亚洲女性喷水在线观看一区| 美女露胸一区二区三区| 国产精品网站在线| 亚洲精品免费在线播放| 校园激情久久| 亚洲电影免费观看高清完整版在线观看 | 夜夜嗨av一区二区三区网页| 亚洲视频综合| 老巨人导航500精品| 欧美性jizz18性欧美| 国产亚洲美州欧州综合国| 日韩视频在线观看国产| 久久国产精品亚洲va麻豆| 欧美激情精品久久久久久大尺度 | 欧美国产第一页| 亚洲婷婷在线| 欧美成人有码| 国产欧美日韩不卡| 正在播放日韩| 欧美激情亚洲| 欧美在线观看www| 欧美性生交xxxxx久久久| 在线播放豆国产99亚洲| 欧美一区二区三区成人| 日韩午夜av电影| 欧美阿v一级看视频| 狠狠网亚洲精品| 久久不射中文字幕| 在线亚洲一区二区| 欧美日韩色婷婷| 91久久久久久久久久久久久| 久久久蜜桃精品| 欧美亚洲一级| 国产精品视区| 香蕉久久夜色精品| 亚洲一区欧美激情| 国产精品手机视频| 欧美在线播放高清精品| 亚洲欧美国产高清va在线播| 亚洲女人小视频在线观看| 欧美日韩精品一区二区| 亚洲精品中文字幕有码专区| 欧美a级一区二区| 男人的天堂亚洲在线| 亚洲人成毛片在线播放| 91久久久一线二线三线品牌| 欧美粗暴jizz性欧美20| 亚洲美洲欧洲综合国产一区| 亚洲三级电影全部在线观看高清| 欧美精品日韩精品| 亚洲一区二区三区久久| 亚洲性线免费观看视频成熟| 国产精品久久久久久久久免费樱桃 | 久久精品噜噜噜成人av农村| 一本久道久久综合婷婷鲸鱼| 欧美日韩免费观看中文| 亚洲午夜精品一区二区| 亚洲欧美日韩直播| 一区在线观看| 亚洲精品日韩久久| 国产精品网站在线播放| 久久精品一区二区| 美女被久久久| 亚洲视频在线免费观看| 午夜精品久久久久久久蜜桃app| 国模私拍视频一区| 亚洲二区视频| 国产精品每日更新| 免费在线观看精品| 欧美视频导航| 久久网站免费| 欧美三级在线视频| 久久久亚洲精品一区二区三区 | 久久精品国产综合精品| 免费亚洲电影| 午夜精品国产精品大乳美女| 久久久久九九九| 一区二区三区视频观看| 性做久久久久久久久| 亚洲另类自拍| 久久久精品2019中文字幕神马| 亚洲日本视频| 午夜在线观看欧美| 一区二区免费在线播放| 欧美影视一区| 亚洲在线观看免费| 牛牛影视久久网| 久久国产高清| 欧美午夜不卡在线观看免费 | 欧美成人免费全部| 久久久精品性| 久久成人免费电影| 在线天堂一区av电影| 久久综合九色| 欧美永久精品| 国产精品电影网站| 亚洲国产一区二区三区在线播| 国产亚洲一区二区三区在线播放| 亚洲美女视频在线免费观看| 亚洲第一天堂无码专区| 亚洲女人天堂成人av在线| 一区二区三区四区五区在线| 蜜臀av一级做a爰片久久| 久久夜色精品| 国产一区二区三区在线观看精品 | 久久福利精品| 亚洲永久视频| 午夜精品久久久久| 国产日韩免费| 亚洲午夜日本在线观看| 一区二区三区四区蜜桃| 欧美国产日韩a欧美在线观看| 老司机午夜精品视频| 激情综合视频| 久久久久成人精品| 久久免费视频在线| 一区二区在线视频播放| 久久激情五月激情| 久久躁狠狠躁夜夜爽| 精久久久久久| 老司机午夜精品视频在线观看| 六月丁香综合| 亚洲国产网站| 欧美日韩精品伦理作品在线免费观看| 亚洲高清不卡在线观看| aa级大片欧美三级| 欧美日韩视频| 亚洲欧美bt| 巨胸喷奶水www久久久免费动漫| 精品51国产黑色丝袜高跟鞋| 老司机精品福利视频| 亚洲国产视频直播| 亚洲在线成人精品| 国产亚洲一区二区在线观看| 久久久精品网| 亚洲美女视频在线观看| 欧美在线中文字幕| 亚洲人成网站999久久久综合| 欧美日韩国产在线一区| 欧美一区二区三区在线观看| 免费在线播放第一区高清av| 亚洲人永久免费| 国产精品免费aⅴ片在线观看| 久久精品亚洲一区| 亚洲精品一区二区三区在线观看| 欧美一区二区视频在线| 亚洲国产天堂久久国产91| 国产精品国产三级国产普通话99| 欧美一区二区在线观看| 亚洲精品在线观看视频| 久久一区二区三区av| 亚洲一区二区在| 1024成人网色www| 欧美系列一区| 久久午夜视频| 午夜激情一区| 日韩视频在线观看国产| 久久在线91| 先锋a资源在线看亚洲| 亚洲国产精品一区制服丝袜| 国产精品色一区二区三区| 欧美精品一区二区三区一线天视频 | 午夜日韩福利| 国产精品白丝av嫩草影院| 欧美在线看片| 欧美激情一区二区在线 | 亚洲午夜电影| 亚洲国产91精品在线观看| 国产精品99久久久久久www| 国产裸体写真av一区二区| 久久综合九色综合欧美狠狠| 亚洲一区二区三区精品视频|