static的變量是放在哪里


static的變量都放在數據段,但是初始值若為0則放在BSS節中。而初始值非零則放在數據節中。

數據節和BSS節都屬於數據段。
 
順便說說對象的存儲,可分為三類:靜態存儲(static storage);自動存儲(automatic storage);動態分配存儲(allocated or dynamic storage)。
對於自動存儲則對應的是棧(stack),動態分配存儲對應的是堆(heap);靜態存儲可分為.bss/.data/.rodata等數據段(section)。
在程序執行中把初始值為零或者是未設初始值的變量放在.bss段中。
 
推薦一個readelf命令: Linux命令學習手冊-readelf命令           


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



猜您在找 全局變量存放在哪里? [原創]靜態局部變量存放在哪里?它的地址在什么編譯時還是運行時確定的? 雞蛋該放在哪些籃子里?多少合適? postman 的 setNextRequest() 放在哪里不重要