Machine-translated by Google. Questions are authored in English.
Top

Discussion

Which function is used to delete the allocated memory space?

  • A.Dealloc()
  • B.free()
  • C.Both A and B
  • D.None of the above

Answer: B

Correct answer: free()

free returns a block to the allocator. It takes the pointer that malloc, calloc or realloc returned - not some address inside the block - and passing anything else is undefined behaviour.

There is no dealloc in standard C. Two conventions are worth keeping: free(NULL) is defined to do nothing, so no guard is needed, and setting the pointer to NULL immediately afterwards turns a later misuse into an immediate fault rather than a silent one.

No comment is present. Be the first to comment.
Loading…

Post your comment

Please log in or register to post a comment.