Bahasa C membagi memori menjadi beberapa bagian, yaitu
- Code (Text), bagian ini berisi kode-kode mesin dari program yang sudah dikompilasi dan merupakan bagian yang hanya dapat dibaca (read only) untuk menghindari perubahan program yang tidak disengaja.
- Static (Globals), bagian ini dibagi menjadi dua, yaitu
- Initialised data segment, bagian yang berisi semua variabel global, static, konstanta dan eksternal yang sudah diinisialisasi Bagian ini dibagi menjadi dua, yaitu bagian read only dan bagian read-write.
- Uninitialised data segment (.bss segment), bagian ini berisi semua variabel global, static dan eksternal yang belum diinisialisasi. Pada bagian ini, variabel global, static dan ekternal secara default diinisialisasi menjadi NOL sebelum program dieksekusi.
- Initialised data segment, bagian yang berisi semua variabel global, static, konstanta dan eksternal yang sudah diinisialisasi Bagian ini dibagi menjadi dua, yaitu bagian read only dan bagian read-write.
- Heap (Free Store), bagian yang digunakan untuk mengalokasikan memori secara dinamis. Bagian heap diatur oleh fungsi malloc(), calloc(), realloc() dan free() yang terdapat pada pustaka h.
- Stack
View original post 316 more words