malloc allocation

Ambitious contributor
20Sep2011,22:50   #1
answerme's Avatar
hi
when I do

ptr=(int*)malloc(10);
Does the memory allocate of 10 bytes are in continuous memory area .
Does malloc allocates memory conitinous
Mentor
21Sep2011,03:29   #2
xpi0t0s's Avatar
Yes to both, although this is not good use of malloc. It allocates 10 bytes, but you should allocate N*sizeof(int) instead, where N is how many ints you want. If ints are 4 bytes on your system, this will allocate two and a half of them, of which only the first two are useful.
Banned
24Oct2011,10:43   #3
raixyz's Avatar
That is to say it returns a pointer of type void * that is the start in memory of the reserved portion of size number_of_bytes. If memory cannot be allocated a NULL pointer is returned.