<address id="ousso"></address>
<form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
  1. 堅持的目標作文

    時間:2025-11-21 13:26:20 目標 我要投稿

    堅持的目標作文

      描述內存分配方式以及它們的區別

    堅持的目標作文

      1) 從靜態存儲區域分配。

      內存在程序編譯的時候就已經分配好,這塊內存在程序的整個運行期間都存在。例如全局變量,static 變量。

      2) 在棧上創建。

      在執行函數時,函數內局部變量的存儲單元都可以在棧上創建,函數執行結束時這些存儲單元自動被釋放。棧內存分配運算內置于處理器的指令集。

      3) 從堆上分配,亦稱動態內存分配。

      程序在運行的時候用malloc 或new 申請任意多少的內存,程序員自己負責在何時用free 或delete 釋放內存。動態內存的生存期由程序員決定,使用非常靈活,但問題也最多。

      拓展:用縮寫的指針比較"if(p)" 檢查空指針是否可靠?如果空指針的內部表達不是0會怎么樣?

      當C 在表達式中要求布爾值時, 如果表達式等于0 則認為該值為假, 否則為真。換言之, 只要寫出

      if(expr)

      無論“expr” 是任何表達式, 編譯器本質上都會把它當if((expr) != 0)處理。

      如果用指針p 代替“expr” 則if(p) 等價于if(p != 0)。

      而這是一個比較上下文, 因此編譯器可以看出0 實際上是一個空指針常數, 并使用正確的空指針值。這里沒有任何欺騙; 編譯器就是這樣工作的, 并為、二者生成完全一樣的代碼。空指針的內部表達無關緊要。

      布爾否操作符! 可如下描述:

      !expr 本質上等價于(expr)?0:1

      或等價于((expr) == 0)

      從而得出結論

      if(!p) 等價于if(p == 0)

      類似if(p) 這樣的“縮寫”, 盡管完全合法, 但被一些人認為是不好的風格

    【堅持的目標作文】相關文章:

    (經典)堅持目標作文09-05

    堅持目標作文02-07

    堅持目標作文【精品】03-05

    堅持目標作文(精選31篇)02-05

    堅持我的目標作文范文06-15

    堅持目標作文(通用32篇)09-15

    【實用】堅持目標作文36篇04-17

    關于堅持目標作文錦集02-21

    關于堅持目標作文(精選12篇)04-02

    【熱門】堅持目標作文2篇04-27

    <address id="ousso"></address>
    <form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
    1. 日日做夜狠狠爱欧美黑人