C ErrorsLesson 46Preview gratis
C NULL
Lesson ini bagian dari C · Semua level
Ringkasan
NULL adalah nilai khusus yang menandai bahwa sebuah pointer tidak menunjuk objek apa pun, dan men-dereference pointer NULL biasanya membuat program crash. Karena itu sebelum memakai pointer hasil malloc atau fungsi yang bisa gagal, selalu periksa apakah ia NULL. Setelah memanggil free pada sebuah pointer, sebaiknya langsung set pointer tersebut ke NULL agar terhindar dari double free dan use-after-free.
Poin kunci
- NULL didefinisikan oleh header standar seperti stddef.h sebagai penanda pointer tidak valid.
- Dereference NULL termasuk undefined behavior yang paling sering berujung segmentation fault.
- Fungsi pengembalikan pointer sering mengirim NULL bila gagal, misalnya malloc dan fopen.
- Setelah free, set pointer ke NULL untuk mencegah akses memori yang sudah dilepas.
- Perbandingan p == NULL lebih mudah dibaca daripada !p untuk kode yang jelas maksudnya.
Materi lengkap
Contoh kode dan kuis
Materi lengkap, contoh kode, dan kuis tersedia untuk pelanggan. 5 soal.