On Mon, Oct 23, 2000 at 07:14:46AM +0700, Oki DZ wrote (probably
edited):
% Apa betul nih?
% Seumpamanya pada program yang lalu itu saya punya
% char *coba;
% coba = malloc(sizeof(char) * 11);
% coba = NULL;
% tahu darimana library C-nya bahwa ada bagian memori yang perlu
% di-free() saat exit, toh referensi ke memori yang hasil malloc()
% tersebut sudah tidak ada. Dan setahu saya, program C tidak punya
% runtime-system yang mengontrol jalannya program. Beda 'kan dengan
% misalnya Turbo Pascal, kalau error, errornya jelas. Kalau C, kan
% paling-paling segfault.
%
---end quoted text---
Umumnya bahasa pemrograman tingkat tinggi punya heap manager
untuk pengelolaan heap. Didalamnya berupa alamat heap yang
sedang aktif, sedang ukuran heap disimpan di bagian awal heap
tsb. (contoh implementasi di Turbo C). Dengan demikian,
seandainya pun aplikasi tidak melakukan 'free' terhadap heap
yang dipakai, heap manager ini dapat menyelesaikan masalah itu.
Kalau mengandalkan alamat dari variabel yang digunakan di dalam
aplikasi, seperti contoh di atas, menurut saya akan merepotkan
kompilator.
--
amal
[EMAIL PROTECTED]
-----------------------
Michael Jordan makes more money from Nike annually than all of the Nike
factory workers in Malaysia combined
-- Little Known Facts, Humor-L
--------------------------------------------------------------------------------
Utk berhenti langganan, kirim email ke [EMAIL PROTECTED]
Informasi arsip di http://www.linux.or.id/milis.php3
Pengelola dapat dihubungi lewat [EMAIL PROTECTED]