数组指针与指针数组的区别

1、数组指针

定义:数组指针式一个指向一维数组的指针变量,定义数组指针的格式为:

int (*p) [5]   数据类型  (*指针名)  [常量表达式]

数组元素为整形,*p的两侧圆括号不能省略

2、指针数组

定义:指针数组就是其元素为指针的数组,它是指针的集合,它的每一个元素都是指针变量,并且它们具有相同的存储类型和指向相同的数据类型

数据类型  *指针数组名   [常量表达式]

static char *name[5]= {"Tom","John","Mary","Smith Black","Rose"};

注意:指针数组在使用前必须首先赋值,也可以初始化同时赋值,一般来说指针数组主要用来操作字符串

#include<iostream>

using namespace std;

int main()

{

    int a[5]={1,3,5,7,9};      //定义数组

    int (*pa)[5]=&a;          //定义数组指针并且初始化 

    cout<<"*pa[0]="<<*pa[0]<<endl;

    cout<<"*(pa[0]+1 ="<<*(pa[0] +1<<endl;

    char *pb[5]={"Tom","John","Mary","Smith Black","Rose"};   //定义指针数组并且初始化

    cout<<"pb[0]="<<pb[0]<<endl;                     //访问数组元素

    cout<<"pb[1]="<<pb[1]<<endl;

}





猜你喜欢

转载自blog.csdn.net/djt4541/article/details/80816464