C 中 sizeof 運算子的計算時間取決於機器嗎?
C 中 sizeof 運算子計算資料類型的大小或變量,但結果取決於編譯程式碼或執行執行檔的機器嗎?
sizeof 的評估時間
這個問題的答案問題是不行。與其他一些運算子不同,sizeof 的計算發生在編譯時。這意味著編譯器在程式編譯時確定資料類型或變數的大小,而不是在執行時確定。
例如,考慮以下程式碼片段:
<code class="cpp">sizeof(short int)</code>
無論哪台機器編譯或執行可執行文件,此程式碼片段的結果都是相同的。這是因為編譯器會在編譯時決定short int資料類型的大小,一般為2位元組。可執行檔只會攜帶這些訊息,程式運行的機器上的short int實際大小不會影響結果。
因此,C中sizeof運算子的求值時間決定為編譯時,而不是執行時。
以上是C 中的 sizeof 運算子是在編譯時還是執行時計算?的詳細內容。更多資訊請關注PHP中文網其他相關文章!