WHAT IS THE DIFFERENCE BETWEEN malloc() and calloc() in c
file management?
Answers were Sorted based on User's Feedback
Answer / karthik
Malloc() is used to allocate a block of memory
Calloc() is used to allocate a block of memory and initialize it.
Is This Answer Correct ? | 2 Yes | 2 No |
Answer / jayakrishnan d
1.malloc is only one argument function while malloc is a
two arguments function.
2.malloc allocates bytes of memory while calloc allocates
array of memory.
3.malloc does not initialize the size of allocated memory ie
gabage value while calloc is initialize size of allocated
memory to '0'.
Is This Answer Correct ? | 0 Yes | 0 No |
Answer / kaushik
malloc takes only one argument but calloc takes two orguments
malloc takes garbage value initial but calloc takes zero initial value,
calloc()and malloc() also returns NULL if there is not sufficient memory available in the heap
Is This Answer Correct ? | 0 Yes | 0 No |
Answer / tinku
There are two differences.
First, is in the number of arguments.
Malloc() takes a single argument (memory required in bytes),
Calloc() needs two arguments.
Secondly, malloc() does not initialize the memory allocated, while
calloc() initializes the allocated memory to ZERO.
calloc() allocates a memory area, the length will be the product of its parameters. calloc fills the memory with ZERO's and returns a pointer to first byte. If it fails to locate enough space it returns a NULL pointer.
Syntax: ptr_var=(cast_type *)calloc(no_of_blocks , size_of_each_block);
i.e. ptr_var=(type *)calloc(n,s);
malloc() allocates a single block of memory of REQUSTED SIZE and returns a pointer to first byte. If it fails to locate requsted amount of memory it returns a null pointer.
Syntax: ptr_var=(cast_type *)malloc(Size_in_bytes);
Is This Answer Correct ? | 0 Yes | 0 No |
Answer / nazia wasim
malloc and calloc both are used to allocate
memory dynamically but the difference is
malloc allocates single block of memory and
calloc allocates multiple block of memory as
per the requirement.
Is This Answer Correct ? | 0 Yes | 0 No |
Answer / datta khilari
1.malloc() takes one argument and allocates memory in a
bytes and return to the pointer.
1.calloc() takes two argument and allocates memory in a
blocks and return to the pointer.
Is This Answer Correct ? | 0 Yes | 0 No |
Answer / sudhir
malloc used to static memory allocation &
calloc is used to dyanmic memory allocation
Is This Answer Correct ? | 1 Yes | 2 No |
Answer / shirish
malloc: malloc create the single block of given size by user
calloc: calloc creates multiple blocks of given size
Is This Answer Correct ? | 1 Yes | 3 No |
what is difference between #include<stdio.h> and #include"stdio.h"
In a byte, what is the maximum decimal number that you can accommodate?
How can I handle floating-point exceptions gracefully?
Which node is more powerful and can handle local information processing or graphics processing?
program to get the remainder and quotant of given two numbers with out using % and / operators?
10 Answers College School Exams Tests, IBM,
to convert a string without using decrement operater and string functions
where does it flourished?
what are the compilation steps? ( i want inside the compiler )
What are advantages and disadvantages of recursive calling ?
12 Answers College School Exams Tests, Evolving Systems, HP, Jyoti Ltd, Sage, Wipro,
write a program for odd numbers?
is c language is a object oreinted language?
What is difference between union All statement and Union?