美文网首页
数组指针与指针数组

数组指针与指针数组

作者: 平凡的鱼仔 | 来源:发表于2018-09-28 23:14 被阅读9次

 数组指针是指向数组首元素的指针,即指针的值为数组首元素的地址,本质是指针。

int(* p)[10];
//()的优先级高,()先将p声明为指针。这里定义了一个指向长度为10的整型数组的指针
//p+i是指 指针移动了i个长度为10的数组。若p指向第一个数组,则p+i指向第i+1个数组
int a[10][10];
p=a;  //p指向a[0]
p++;  //p指向a[1],移动单位是行或者一个长度为10的数组,10个元素为一行,数组指针也叫行指针

 指针数组是数组元素为指针的数组,本质为数组,类似于整型数组、字符数组等。整型数组的数组元素为整型的数字,字符数组的数组元素为字符。比如:char *days[7]; days数组的每一个元素都是字符型指针变量。指针数组和其它数组一样,它们都可以在定义时初始化,也可以用赋值语句对其初始化。比如:

char* days[7]={"Sunday","Monday","Tuesday","Wed","Thur","Fri","Sat"};  //[]结合性优先级比*高
int a[7][5];
for (int i =0;i<7;i++) days[i]=a[i];
//用指针访问二维数组和用数组名访问是一样的
//访问a[i][j]的四种方法:p[i][j]、*(*(p+i)+j)、*(p[i]+j)、(*(p+i))[j]

此时days[0]指向Sunday,days[1]指向Monday,.....,days[6]指向Sat。

总结:数组指针是一个指针变量,在c/c++里专门用来指向二维数组。指针数组是多个指针变量,是数组的一种。

相关文章

  • C语言的数组指针与指针数组(One)

    一、数组指针与指针数组: 数组指针<——>本质是指针 指针数组<——>本质是数组上图: 二、数组指针: int ...

  • C语言21 指针数组与数组指针

    C语言21 指针数组与数组指针 指针数组的定义 指针数组的赋值 结构体指针数组 分析下面的代码 数组指针的定义 数...

  • 指针笔记

    指针数组和数组指针 数组指针是指向数组的指针,指针的值与数组首元素地址相同,但范围是整个数组,所以数组指针和数组名...

  • 指针

    指针数组与数组指针 在这里数组指针是指向数组的指针,其本质为指针,指向的对象是数组。由于数组的形式多样所以数组指针...

  • 指针数组 & 数组指针 & 函数指针

    一、指针数组 & 数组指针 普通数组: 即数组名a与(*p)等价,都代表数组的首地址,此为数组指针 指针数组: ...

  • iOS 指针详解

    指针数组与数组指针在这里数组指针是指向数组的指针,其本质为指针,指向的对象是数组。由于数组的形式多样所以数组指针的...

  • 2019-09-18C语言复杂表达式与指针高级应用

    1.指针数组与数组指针 1.1、字面意思来理解指针数组和数组指针 (1)指针数组的实质是一个数组,这个数组中存储的...

  • 混淆知识点

    1、指针数组&数组指针、常量指针&指针常量、函数指针&指针函数 数组指针&指针数组 数组指针的定义 int (*p...

  • C语言特性(指针数组和指向指针变量的指针)

    指针数组和指向指针变量的指针 指针数组与main()函数形参 声明指针数组与声明普通数组的语法类似,其语法格式如下...

  • 数组知识点

    数组指针与指针数组: int(*p)[4]; --定义数组指针p,指向含4个元素的一维整型数组的指针变量(是指针)...

网友评论

      本文标题:数组指针与指针数组

      本文链接:https://www.haomeiwen.com/subject/hzspoftx.html