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

Discussion

malloc() allocates memory from the heap and not from the stack.

  • A.True
  • B.False

Answer: A

Correct answer: TRUE

malloc obtains storage from the heap, a region the program grows at run time through the operating system. That is what gives the block a lifetime independent of any function - it persists until free is called, whatever calls return in the meantime.

Stack storage behaves quite differently: it is allocated by the function prologue and reclaimed on return, which is why returning the address of a local is a fault and returning the result of malloc is not.

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

Post your comment

Please log in or register to post a comment.