The [ ] operator and the equivalance of pointers and arrays