透過除錯器觀察位址:
0x0042c17c(資料區,較小)0x0012ff44(堆疊區,較大)應用程式記憶體分區:
main() 執行之前由編譯器初始化(寫入可執行檔映像),預設為 0。0xCC,Release 模式為殘留隨機值。實驗證明:修改可執行檔中對應位址的位元組,全域變數初值即改變,證明初始化動作發生於程式載入階段,由編譯器完成。
全域變數耦合度極高,任何模組皆可讀寫,導致副作用難以追蹤、單元測試困難、併發競態風險。應盡量限制作用域,優先使用區域變數、函數參數、類別成員,必要時用單例模式或命名空間封裝。