字串文字的大小
給定的程式碼示範了 sizeof 運算子在不同類型的字串常數上的用法。輸出顯示字串文字的大小sizeof("f") 與指向字串文字的指標的大小(sizeof(foo)) 以及字元陣列的大小(sizeof(bar) )).
為什麼sizeof 計算字串文字的長度?
sizeof 運算子計算其運算元的大小位元組。對於字串文字,操作數是對應的字元陣列表示形式,包括終止空 (' ') 字元。這解釋了 sizeof("f") 的 2 輸出,因為它考慮了 'f' 和 ' ' 字元。
給 sizeof 時,字串文字是否有不同的類型?
沒有。字串文字的類型為 const char[N],其中 N 是字串的長度,包括終止空字元。但是,當將字串文字傳遞給 sizeof 運算子時,它會將字串視為 const char* 類型的表達式,該類型是指向字元的指標類型。這解釋了 sizeof(foo) 的 4 的輸出,因為它是 32 位元機器上指標的大小。
其他要點:
以上是為什麼「sizeof」會對字串文字、指標和字元陣列產生不同的結果?的詳細內容。更多資訊請關注PHP中文網其他相關文章!