How C free() Knows What to Free: Heap Metadata and Dynamic Memory | CodeTrail