Quote Originally Posted by Mortanius View Post
I don't understand why it's not that important, but that's ok.
Let me try to explain.

First of all, think of C as a "close to the metal" language, meaning that, although "high level", it tries to be as fast, direct and low-on-resources as possible. Also, consider that C was initially created as a tool to build Unix with. Lastly, think of the myriad of devices( such as micro-controllers etc ) whose functionality has little resemblance to modern PCs.

With the above said, what would be the benefits of an automatic length/size associated with a pointer/array? Convenience maybe... But would it? I'll list some of the potential problems/concerns:
*) How many bytes should this length/size variable be?
*) Would it be optional? ( Yes: efficiency problem ) ( No: size problem )
*) Would it be enforced( not allowed to go out-of-bounds )?

These are my two cents on the subject.