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 difference between C and C++
what is the purpose of the following code, and is there any problem with the code? void fn(long* p1, long* p2) { register int x = *p1; register int y = *p2; x ^= y; y ^= x; x ^= y; *p1 = x; *p2 = y; }
what is the difference b/w compiler and debugger?
what will be the output for the following main() { printf("hi" "hello"); }
How are pointers declared in c?
write a c prog for removing duplicate character from an array and sorting remaining elements using a single array
What are the 4 types of functions?
What is void main () in c?
what is recursion in C
Explain how can I make sure that my program is the only one accessing a file?
When do you say that a digraph is acyclic A)if and only if its first search does not have back arcs B)a digraph is acyclic if and only if its first search does not have back vertices C)if and only if its first search does not have same dfnumber D)None of these
#include<string.h> void main() { String s1[]={"swathi"}; string s2[]={"maddimsetti"}; s1[]=s[]; printf("%s",s1[]); }