指针数组 数组指针

    科技2022-08-04  98

    1.指针数组得定义

    char arr[10]; // 10个char char* arr[10]; //10个指针(char*) Point* arr[10]; //10个指针(Point*) int arr[10]; //10指针(int*)

    2.指针数组得赋值 char *a=“Hello” //*a=‘H’ *(a+1)=‘e’ (a+2)=l char b=“编程达人”; //*b=‘编’ *(b+2)=达

    (1)char* arr[2]={a,b};

    (2)char * arr[2]; arr[0]=‘a’; arr[1]=‘b’;

    (3)char *arr[2]={“Hello”,“编程达人”}

    3.结构体指针数组 struct Point { int x; int y; } Popint p; //8字节 Point arr[10]; //810字节 Point arrPoint[10]; //4*10字节

    4.分析下面代码: int arr[]={1,2,3,4,5,6,7,8,9,0};

    int *p=&arr[0]; // *p=1 p=arr[0]得地址

    int *p=arr; arr==arr[0]

    int p=&arr; 什么情况? int p=(int)&arr //int()[10]数组指针

    5.数组指针得定义 int(*px)[5]; //一维数组指针 char(*px) [3];

    int(*px)[2][2]; //二维数组指针

    char(*px)[3]3[3];//三维数组指针

    思考题:int *p[5]与int(*p)[5]有什么区别?

    数组指针不理解到时再说

    Processed: 0.008, SQL: 8