Minggu, 27 April 2014

Function Call Stack and Header

Rangkuman 5.7 - 5.8

Call Stack
Untuk memahami bagaimana C melakukan pemanggilan fungsi , pertama-tama kita perlu mempertimbangkan struktur data yang dikenal sebagai stack . Siswa dapat memikirkan stack sebagai analogi dengan tumpukan piring . Ketika piring ditempatkan pada tumpukan , biasanya piring ditempatkan di bagian atas . Demikian pula, ketika piring dihapus dari tumpukan , piring itu selalu dihapus dari atas . Stack dikenal sebagai last-in , first-out ( LIFO ). Program pelaksanaan Stack juga berisi memori untuk variabel lokal yang digunakan dalam setiap permintaan dari fungsi selama eksekusi sebuah program. Data ini , disimpan sebagai bagian dari pelaksanaan program stack, dikenal sebagai record activity atau stack frame dari fungsi pemanggil . Ketika panggilan fungsi dibuat , catatan aktivasi untuk fungsi panggilan didorong ke pelaksanaan program stack. Ketika kembali fungsi ke pemanggil nya , rekor aktifasi untuk fungsi panggilan ini muncul dari tumpukan dan variabel local yang tidak lagi dikenal program. Tentu saja, jumlah memori dalam komputer terbatas , sehingga hanya sejumlah memori dapat digunakan untuk menyimpan catatan aktivasi pada pelaksanaan program stack. Jika panggilan fungsi yang berlebih terjadi  dari yang bisa disimpan oleh record activity, maka mereka disimpan pada eksekusi program stack, kesalahan yang dikenal sebagai stack overflow terjadi .

Header
Header adalah file yang mengandung prototype tentang argumen, definisi variabel atau konstanta suatu fungsi tertentu. Header biasanya dituliskan dengan ekstensi .h. Berikut adalah contoh header yang sudah disediakan oleh sistem.



Tidak ada komentar:

Posting Komentar