0

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].

4 Answers 4

3

It means it allocated one block of memory large enough to hold 20 chars (from index 0 to 19)

Sign up to request clarification or add additional context in comments.

2 Comments

Thanks. Setting this as answer because you were first.
Hm, I think he was last ;-) But hey, no problem ;-)
3

[0] to [19] (20 elements, that is)

Comments

0

The first - char store[20] allocates 20 chars, from 0 to 19.

Comments

0

It allocates memory for 20 chars, i.e. valid indices go from 0 to 19.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.