關於strlen與sizeof的區別

2021-06-06 07:46:49 字數 323 閱讀 9991

假設有以下**:

void main( void )

; cout<

分析:strlen函式測量字串陣列時,返回實際儲存的字元長度,而不是為陣列分配的空間大小,sizeof運算子正好相反,當它對字串陣列ch進行操作時,它返回為陣列分配的空間大小。因此,前兩個輸出語句結果分別是10、20。pch為字串指標,因此也可以用strlen函式測量其指向的字串的實際長度,而pch本身是乙個指標,指標變數本身占用4個位元組的儲存空間,因此使用sizeof操作符得到pch的大小為4.最後,使用sizeof操作符得到整型陣列aa[ ]的大小為5*4位元組,即20.

關於 strlen 與 sizeof 的區別

關於 strlen 與 sizeof 的區別,我相信很多人都有所了解。以下我總結了幾點關於strlen 與 sizeof 的區別和注意事項。1.strlen 是函式,sizeof 是運算子。2.strlen 測量的是字元的實際長度,以 0 結束。而sizeof 測量的是字元的分配大小。比如 char...

關於 strlen 與 sizeof 的區別

關於 strlen 與 sizeof 的區別,我相信很多人都有所了解。以下我總結了幾點關於strlen 與 sizeof 的區別和注意事項。1.strlen 是函式,sizeof 是運算子。2.strlen 測量的是字元的實際長度,以 0 結束。而sizeof 測量的是字元的分配大小。比如 cpp ...

關於sizeof與strlen用法的討論

今天在進行乙個多執行緒檔案傳輸的時候,在考慮到收發資料報的組成與拆包時,總是發現收發包會出現錯誤,導致收發報的失敗。後來通過仔細檢查,原來是 sizeof與strlen用法出現了錯誤,經過查詢,我把資料拿出來和大家一起分享。1.sizeof操作符的結果型別是size t,它在標頭檔案中typedef...