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 #ifdef ? What is its application?
What is return type in c?
Difference between Shallow copy and Deep copy?
program to print upper & lower triangle of a matrix
what is the difference between auto and static keywords
1 Answers cDot, College School Exams Tests, TCS,
int *p=20; if u print like dis printf("%d",p); o\p:- 20; how is it possible? plz give me the explanation.
What does #pragma once mean?
Go through the following code sinippet char a[20]; a="Hello Orcale Test"; will this compile?
all c language question
read a number & print all its devisors using c-program?
Can i use Two or More Main Funtion in any C program.?
A function 'q' that accepts a pointer to a character as argument and returns a pointer to an array of integer can be declared as: A)int (*q(char*)) [] B)int *q(char*) [] C)int(*q)(char*) [] D)None of the Above