指標儲存地址分析
以上程式碼裡面有四個指標ptr,ptr2,ptr3,ptr4
ptr,沒有被初始化值,所以在.bss資料段,它指向一個int型別資料的地址(還不知道要用來指向哪個int數值的地址)
但是它自己儲存的是個地址,所以它自己是long長度的資料,儲存在.bss
ptr2,指向foo這個int資料的地址
ptr2是確定型別(儲存地址,long),確定數值(指向全域性變數foo),所以它自己也是確定的全域性變數,所以ptr2在.data資料段。
ptr3,在main函式裡儲存i的地址,隨著main函式的退出,ptr3這個變數的作用範圍就消失了,所以它是在main scope裡面的自動變數,
它在stack裡
ptr4,指向一塊heap記憶體的地址,heap記憶體本身的這塊資料是malloc申請得到的,所以它的scope由使用者控制,需要使用者來後續free,
所以ptr4在stack裡;如果你想在main的外部(比如別的函式裡),去獲得ptr4這個地址的值,你就必須把ptr4的值傳給別的函式。
否則這個地址的值在main以外的地方就丟失了,
綜上:所以指標本身也是一個普通的資料
它儲存在哪裡,和別的變數一樣的分析方法
相關文章
- swift 物件儲存地址分析Swift物件
- 日常學習儲存--陣列和指標陣列指標
- 如何精簡 Prometheus 的指標和儲存佔用Prometheus指標
- 為什麼延遲是儲存中最重要的指標指標
- slice 指標地址相同,但是資料不同指標
- 函式名/函式地址/函式指標函式指標
- MySQL如何有效的儲存IP地址MySql
- 徹底搞清C/C++中一維陣列,二維陣列,指標,陣列指標和指標陣列以及指向指標的指標,行地址和列地址之間的關係C++陣列指標
- 儲存過程——遊標儲存過程
- 批註:智慧指標分析指標
- 財務分析常用指標指標
- 遊戲分析指標之--LTV遊戲指標
- 指標:存放記憶體地址的變數指標記憶體變數
- 如何利用MySQL有效的儲存IP地址MySql
- greenDAO資料庫之修改儲存地址資料庫
- 程式分析與優化 - 5 指標分析優化指標
- 資料分析——指標理論指標
- 財務分析指標體系指標
- 遊戲分析指標之--DAU/MAU遊戲指標
- 遊戲分析中的重要指標遊戲指標
- jquery 判斷email地址是否合法並儲存jQueryAI
- NULL 指標、零指標、野指標Null指標
- IP地址定位的精準度都要看哪些指標?指標
- 程式的虛擬地址空間——NULL指標分割槽Null指標
- Go語言什麼時候該使用指標 與 指標使用分析Go指標
- Activity基類實現儲存Bundle資料,避免空指標及重複勞動指標
- 指標體系與分析體系指標
- 野指標 空指標指標
- etcd-raft-儲存分析Raft
- Laravel 儲存 (Storage) 原始碼分析Laravel原始碼
- 兩種SQL分頁方法儲存過程和遊標儲存過程SQL儲存過程
- MySQL 儲存過程/遊標/事務MySql儲存過程
- 指標常量和常量指標指標
- 常見網際網路分析指標指標
- Hootsuite:7個重要的Twitter分析指標UI指標
- 人力資源指標分析庫(轉載)指標
- 資料倉儲指標體系搭建實戰指標
- 【clickhouse專欄】對標mongodb儲存類JSON資料文件統計分析MongoDBJSON