c c sizeof 和strlen的區別

2022-08-17 06:57:21 字數 237 閱讀 1184

sizeof是乙個操作符,strlen是庫函式;

sizeof的引數可以是資料的型別,也可以是變數,二strlen只能是以『\0』的字串做引數。

編譯器再編譯時就計算出了sizeof的結果,而strlen函式必須再執行時才能計算出來。並且sizeof計算的是資料型別佔記憶體的大小(位元組數),而strlen計算的是字串實際的長度。

陣列做sizeof的引數不退化,傳遞給strlen退化為指標。

**:

C C sizeof和strlen的區別總結

3.sizeof結論 sizeof 是運算子,在標頭檔案的型別為unsigned int,其運算值在編譯時就計算好了,引數可以是指標,陣列,型別,物件和函式等。strlen 是函式,要在執行時才能計算。引數必須是字元型指標char 當陣列名作為引數傳入時,實際上陣列就退化為指標了。該函式完成的功能是...

sizeof和strlen和 countof的區別

運算子,計算引數所佔記憶體 int nnum2 strlen arr 是函式,求字元的個數,不包括 0 int nnum3 countof arr windows巨集 計算陣列的元素個數 cout nnum1 cout nnum2 cout nnum3 endl int arr1 20 nnum1 ...

sizeof和strlen的區別

sizeof與strlen的區別與聯絡 轉 1.sizeof操作符的結果型別是size t,它在標頭檔案中typedef為unsigned int型別。該型別保證能容納實現所建立的最大物件的位元組大小。2.sizeof是算符,strlen是函式。3.sizeof可以用型別做引數,strlen只能用c...