954,500 Members — Technology Publication meets Social Media
Username:
Password:
Lost login information?
Have something to say? Contribute New Article Reply to this Article

؟questions?

hello again
i have three questions again:
how can i use malloc or calloc for a two demontional arrays?

is it true that A. calloc allocates memory in contiguous bytes, malloc does not ensure contiguous memory allocation?

the third question which is a bit irrelevent to programming
how memorey locations in computers are given address?i mean early intell CPUs could
onley address (64K) but what about the rest of memory locations?

thanks

xlx16
Newbie Poster
10 posts since May 2008
Reputation Points: 10
Solved Threads: 0
 

> is it true that A. calloc allocates memory in contiguous bytes, malloc does not ensure contiguous memory allocation?
No, it's false.
calloc is nothing more than malloc + memset to wipe the memory to all-bits-zero.

> i mean early intell CPUs could onley address (64K)
Only 64K in a single block.
If you wanted more, then you had to start messing about with segment registers
http://en.wikipedia.org/wiki/X86


> how can i use malloc or calloc for a two demontional arrays?
One (of several) ways

char **arr = malloc( rows * sizeof *arr );
for ( r = 0 ; r < rows ; r++ ) {
    arr[r] = malloc( cols * sizeof *arr[r] );
}
Salem
Posting Sage
Team Colleague
11,531 posts since Dec 2005
Reputation Points: 5,862
Solved Threads: 953
 

This question has already been solved

Post: Markdown Syntax: Formatting Help
You