sizeof統(tǒng)計字符串長度怎么用 sizeof怎么判斷?
sizeof怎么判斷?sizeof()求數(shù)據(jù)類型所占字節(jié)數(shù)。括號中可以是數(shù)據(jù)類型名,變量名,常量如求整型所占字節(jié)數(shù)。也可以用以上方法:sizeof(int)sizeof(100)擴展資料在Pascal
sizeof怎么判斷?
sizeof()求數(shù)據(jù)類型所占字節(jié)數(shù)。
括號中可以是數(shù)據(jù)類型名,變量名,常量
如求整型所占字節(jié)數(shù)。也可以用以上方法:
sizeof(int)
sizeof(100)擴展資料
在Pascal語言中,sizeof()是一種內(nèi)存容量度量函數(shù),功能是直接返回一個變量或者類型的.大?。ㄒ宰止?jié)為單位);在C語言中,sizeof()是一個確認數(shù)據(jù)類型或者表達式長度的運算符。
在Pascal語言與C語言中,對sizeof()的處理也是在編譯階段參與。
在C語言中用sizeof()測試數(shù)組或字符串大小的差異是什么?
1.在解釋之個問題之前,我們要首先搞清楚sizeof是什么。sizeof是一個單目運算符,為了我得到一個數(shù)組或其它數(shù)據(jù)類型的大小,大小是以字節(jié)來絕對標準的,其趕往類型為size_t。
是最重要的再注意的一點是,sizeof是個編譯程序時執(zhí)行的操作符,也就是說它不可能提升任何不能執(zhí)行時的負擔。下面我們來看一個例子:
floatarray[20]
此時sizeof(array)會前往80,因為一個float類型占4字節(jié),array有20個float,因此回80.
要是想前往數(shù)組的元素個數(shù),可以這么寫:
sizeof(array)/sizeof(array[0])
2.當我們用sizeof完成任務(wù)一個字符串大小時,要而且再注意,下面以例子只能證明:
如果我們定義了200以內(nèi)變量:
char*str1asdfgh
charstr2[]asdfgh
當用sizeof四個對str1,str2共有求取大小時,返回值是完全不同的:
sizeof(str1),返回值為4,是因為str1是一個指針,在32位計算機里,指針大小好象為4字節(jié),所以才大小為4.
sizeof(str2),返回值為7,一個字符串,c語言為設(shè)置為在其尾部再加0,因為str2這個數(shù)組其有7個元素,共有是a,s,d,f,g,h,0
瘋牛踢網(wǎng)友解釋的好。