WHAT IS THE DIFFERENCE BETWEEN malloc() and calloc() in c
file management?
Answers were Sorted based on User's Feedback
Answer / monalisa dhal samanta
malloc() is a allocated 1 unit data type.it is a one argument
function .malloc allocate bytes of memory .
calloc() is a allocated sizeof data type .it is a two
argument .
| Is This Answer Correct ? | 8 Yes | 3 No |
Answer / priya
malloc() allocates bytes of memory for a single block
whereas calloc() allocates blocks of memory for multiple
blocks
| Is This Answer Correct ? | 8 Yes | 3 No |
Answer / vijay r15
malloc creates the
single block of gn
size by user. Malloc
takes 1ly 1 arg.
Calloc creates
multiple block of gn
size. It will
initialize the
reserved memory block
to zero. Calloc takes
2 arguments
| Is This Answer Correct ? | 7 Yes | 2 No |
Answer / dilip k. singh(dks)
Malloc:
1. Takes only 1 argument- the size of the memory block to
be allocated.
2. Allocates memory as a single contiguous block.
3. Will fail if a single contiguous memory block of
required size is not available.
Calloc:
1. Takes two arguments - the number of memory blocks needed
and the size of each memory block.
2. It may or may not allocate a single contiguous block,
thus will not fail if a single contiguous memory block
of required size is not available.
3. Initialises the memory blocks to 0.
sUMMARY:
malloc() allocates 1 unit(datatype) of memory each time it
is called so to allocate memory for a file read char by
char allocating memory each time for a char till EOF.
calloc allocates sizeof(datatype) bytes to the no of
elements in the file, where by the user can specify the
file size as the second arguement.
char *malloc(sizeof(datatype) )
char *calloc(sizeof(datatype), num of elements)
calloc() is more efficient as memory is allocated in 1
cycle so fewer clock cycles, more faster executiop.
| Is This Answer Correct ? | 3 Yes | 0 No |
Answer / venkateswarlupanidapu
malloc occupies byte of space in memory location and holds
only one argument of data bytes.
calloc occupies and holds 2 bytes of memory in address
location with arguments databytes,number of data bytes.
calloc occupies in structure of blocks and malloc allocates
in struncture of databytes.
| Is This Answer Correct ? | 14 Yes | 12 No |
Answer / rinky
malloc use boy as a male condom
calloc use girl as a Female condom
| Is This Answer Correct ? | 3 Yes | 1 No |
Answer / divya sharma
malloc takes the single argument nd calloc takes two argument
malloc initialize byte of memory while calloc initialize the
block of memory
| Is This Answer Correct ? | 1 Yes | 0 No |
Answer / md ajij
1.malloc() allocate one block of space in memory , argument
of the malloc is the size of the block.
where as calloc() allocate multiple blocks in the memory
,argument of the malloc() is the size of a block and number
of blocks.
2. malloc() takes garbage value at the initial time where
initial value of calloc() is zero.
| Is This Answer Correct ? | 1 Yes | 0 No |
Answer / naresh guguloth(iiit,basar)b09
malloc():-
-------
It is used to allocate memory for one variable only.
int*hi=(int*)malloc(sizeof(int));
calloc():-
It is used to allocate memory for any array.
int*bye=(int*)calloc(sizeof(int),10)
| Is This Answer Correct ? | 1 Yes | 0 No |
Answer / bavithra
malloc() doesnot initialize the allocated memory
calloc() initializes the allocated memory to ZERO
| Is This Answer Correct ? | 1 Yes | 1 No |
why do some people write if(0 == x) instead of if(x == 0)?
which one is highest Priority in c? a)=,b)+,c)++,d)==
cin.ignore(80, _ _);This statement a) ignores all input b) ignores the first 80 characters in the input c) ignores all input till end-of-line d) iteration
What are qualifiers?
Write a program for finding factorial of a number.
How can I change their mode to binary?
How do I use strcmp?
What are the advantages and disadvantages of a heap?
What is the significance of an algorithm to C programming?
What library is sizeof in c?
What is the difference between GETS();AND SCANF();
array contains zeros and ones as elements.we need to bring zeros one side and one other side in single parse. ex:a[]={0,0,1,0,1,1,0,0} o/p={0,0,0,0,0,1,1,1}