Anda tentu masih ingat bahwa panjang sebuah array yang dideklarasikan harus diketahui sebelumnya.Jika tidak didefinisikan, maka program akan menampilkan pesan error pada saat kompilasi program. Sayangnya dalam banyak hal kita jarang sekali dapat mengetahui dengan pasti berapa banyak data yang akan dimasukkan ke dalam array. Bayangkan anda membuat sebuah software statistik sederhana dimana software tersebut akan menghitung jumlah dan rata-rata dari angka yang dimasukkan. Anda juga menginginkan deretan data yang dimasukkan user akan disimpan dalam sebuah array. Tentu saja anda tidak akan pernah tahu berapa banyak data yang akan dimasukkan oleh user.
Situasi seperti ini dapat diatasi dengan menggunakan teknik Dynamic Memory Allocation, dimana memory akan dialokasikan pada saat run time. Teknik ini juga akan mengurani beban pada memory stack karena data yang dimasukkan akan disimpan pada area lainnya, misalnya data segment pada memori komputer.
Untuk memahahi hal ini dapat dilihat program berikut ini
Situasi seperti ini dapat diatasi dengan menggunakan teknik Dynamic Memory Allocation, dimana memory akan dialokasikan pada saat run time. Teknik ini juga akan mengurani beban pada memory stack karena data yang dimasukkan akan disimpan pada area lainnya, misalnya data segment pada memori komputer.
Untuk memahahi hal ini dapat dilihat program berikut ini



