Just in case if you meant zeroing an array in C/C++
char myBuffer[20] = { 0 };
This is to set the memory occupied by myBuffer all to 0 (or '\0', or terminating zero) to remove any previous content from that memory address and make sure we know what's there. A terminating zero indicates the end of a string, so the above code effectively sets myBuffer to be empty.
If you meant why do we start indexing an array at 0 index (instead of 1), that is, why the first element is at position 0, not 1, please see LiOS's answer.