malloc()
Mengalokasikan memori secara dinamis dalam C
Fungsi malloc()
digunakan untuk mengalokasikan memori secara dinamis di heap. Berbeda dengan array statis, malloc()
memungkinkan program untuk mengalokasikan memori sesuai kebutuhan saat runtime.
Sintaks
size
➜ Jumlah byte yang ingin dialokasikan.Mengembalikan pointer ke blok memori yang dialokasikan.
Jika gagal, mengembalikan
NULL
.
Contoh Penggunaan
1. Mengalokasikan memori untuk integer
Hasilnya:
malloc(sizeof(int))
➜ Mengalokasikan 4 byte untuk satu integer.Memeriksa
NULL
➜ Jika alokasi gagal, program akan keluar.*ptr = 42
➜ Menyimpan nilai42
di memori yang dialokasikan.free(ptr)
➜ Membebaskan memori setelah selesai digunakan.
2. Mengalokasikan memori untuk array dinamis
Hasilnya:
malloc(n * sizeof(int))
➜ Mengalokasikan 5 x 4 byte = 20 byte untuk array integer.Mengisi array dengan nilai
i * 2
.Menampilkan isi array.
free(arr)
➜ Membebaskan memori setelah digunakan.
3. Mengalokasikan memori untuk string
Hasilnya:
malloc(20 * sizeof(char))
➜ Mengalokasikan 20 byte untuk string.strcpy(str, "Hello, malloc!")
➜ Menyalin string ke memori yang dialokasikan.free(str)
➜ Membebaskan memori setelah digunakan.
Last updated