what is mallloc()?how it works?
Answers were Sorted based on User's Feedback
malloc is briefly termed as Memory ALLOCation ......
whenever we write a program in C we will declare some
variables or arrays for a size more than whatever we need ,
etc etc..... so some variables are getting used correctly
and in arrays only some of the memory spaces are getting
used because the user dont know how much spaces he is gonna
use.......so here some memory is getting wasted without
using it.... so there comes a concept called DYNAMIC MEMORY
ALLOCATION in C...
we will give the values for how much memory we need at the
run time of the program... but this concept also only 85%
efficient... this has three types :
1)malloc();
2)calloc();
3)realloc();
malloc() is a function present in ALLOC.H standard library
which is used to allocate memory at run time (ie) in single
or in blocks.....
the syntax is :
pointer_variable=(typecasting
datatype*)malloc(sizeof(datatype));
this pointer variable should be of same datatype as the
typecasting datatype........
thank u
| Is This Answer Correct ? | 4 Yes | 2 No |
Answer / ravi chandra
malloc function is used to allocate some space in memory for
the current program that we are running.
malloc() function actually return s the value of the address
of the memory in the memory segment
c=malloc();
it gives the address to the variable c.
h=malloc(sizeof(struct node));
it returns the address of structure for the variable h;
some h=1000; (address value)
| Is This Answer Correct ? | 1 Yes | 1 No |
Answer / raghavan
Every process has a address boundary. When a process does a malloc, memory is allocated from this boundary location and the process address boundary is moved to the new end. In linux, there is a function sbrk() that allows to change the process address boundary. sbrk(0) will return the current process address boundary and sbrk(n) will move the process boundary by n bytes.
malloc internally uses this feature to allocate memory for the requesting process.
| Is This Answer Correct ? | 0 Yes | 0 No |
Answer / srinath, hyd
ya. this is an memory allocation porpose.
some other allocations are there calloc(), alloc()
| Is This Answer Correct ? | 0 Yes | 1 No |
What is the output for the program given below typedef enum grade{GOOD,BAD,WORST,}BAD; main() { BAD g1; g1=1; printf("%d",g1); }
What is the easiest sorting method to use?
write a program to find the sum of the array elements in c language?
24 Answers ICT, Infosys, Wipro,
Explain what is the difference between declaring a variable and defining a variable?
Can a variable be both static and volatile in c?
Which driver is a pure java driver
How is = symbol different from == symbol in c programming?
what do you mean by enumeration constant?
Explain is it better to bitshift a value than to multiply by 2?
what is the difference between getch() and getchar()?
Explain what is dynamic data structure?
Is it possible to use curly brackets ({}) to enclose single line code in c program?