指针操作数组,方法一是p+index,方法二是p[index],第二种方法跟数组访问方法是一样的。
数组引用返回的是数组的第一个元素的指针地址。
可以将指针指向数组的任意元素,然后从那里开始访问,只要注意不越界就行了,这说明数组只是将元素连续堆叠,并不需要也没有其他的配置信息存放在数组元素之外的地方或者在头尾等等任何地方,都没有,他只是连续的存储而已。
#include <iostream>
using namespace std;
int main()
{
const int ARRAY_LEN = 5;
int MyNumbers[ARRAY_LEN]={24,-1,365,-999,2011};
// int * pNumbers = MyNumbers;
// cout << "Displaying array using pointer syntax,operator*" << endl;
// for(int Index = 0; Index < ARRAY_LEN;++Index)
// cout << "Element " << Index << " = " << * (MyNumbers + Index) << endl;
// cout << "Displaying array using pointer with array syntax,operator[]" << endl;
// for(int Index = 0; Index < ARRAY_LEN;++Index)
// cout << "Element " << Index << " = " << pNumbers[Index] << endl;
int * pNumbers = &(MyNumbers[1]);
cout << "Displaying array using pointer syntax,operator*" << endl;
for(int Index = 0; Index < ARRAY_LEN-1;++Index)
cout << "Element " << Index << " = " << * (MyNumbers + Index) << endl;
cout << "Displaying array using pointer with array syntax,operator[]" << endl;
for(int Index = 0; Index < ARRAY_LEN-1;++Index)
cout << "Element " << Index << " = " << pNumbers[Index] << endl;
}