指针数组

    int arr[10]={1,2,3,4,5,6,7};   
    int (*ptr)[10];
    //声明一个数组指针,其实保存的指针指向数组中每个元素的地址,
    //int (*ptr)[10]={0,1,2,3,4};//ERROR:因为这是定义了一个保存10个元素指针的数组,编译出错:scalar object 'ptr' requires one element in initializer
    ptr=&arr;
    cout<<"ptr="<<ptr<<endl;
    cout<<"*ptr="<<*ptr<<endl;
    cout<<"**ptr="<<**ptr<<endl//1
    cout<<"*(*ptr+1)="<<*(*ptr+1)<<endl;;//2
    cout<<"*(ptr[0])="<<*(ptr[0])<<endl;//1  
    cout<<"(*ptr)[0]="<<(*ptr)[0]<<endl; //1

你可能感兴趣的:(指针数组,数组指针)