Q:
What is the difference between malloc() and calloc() functions?
Answer
As against malloc(), calloc() needs two arguments, the number of elements to be allocated and the size of each element. For example,
p = (int *) calloc (10, sizeof (int));
would allocate space for a 10- integer array. Additionally, calloc() would also set each of this element with a value 0.
Thus the above call to calloc() is equivalent to:
p = (int *) malloc (10 * sizeof (int));
memset (p, 0, 10 * sizeof( int ));
View answer
Workspace
Report Error
Discuss