Which header file should be included to use functions like malloc() and calloc()?
Answer: B
Correct answer: stdlib.h
stdlib.h declares malloc, calloc, realloc and free, together with size_t.
Omitting it is more dangerous than it looks. Without the prototype an older compiler assumes malloc returns int, and where a pointer is wider than an int the address is silently truncated. A cast on the result hides exactly the warning that would have revealed it, which is the main argument against casting in C.
Please log in or register to report this question.