Reputation: 2709
Quick question regarding how memory is allocated.
If someone were to allocate 20 chars like this:
char store[20];
does this mean that it allocated 20 char type blocks of memory, or that it allocated char type blocks of memory starting with 0 and ending with 20. The difference is that the first example's range would be from store[0] to store[19], whereas the second example's range would be from store[0] to store[20].
Upvotes: 0
Views: 448
Reputation: 98826
It means it allocated one block of memory large enough to hold 20 chars (from index 0 to 19)
Upvotes: 3
Reputation: 370397
It allocates memory for 20 chars, i.e. valid indices go from 0 to 19.
Upvotes: 0
Reputation: 57066
The first - char store[20] allocates 20 chars, from 0 to 19.
Upvotes: 0