若有定义:int(*p)[4],则p是一个指向含有四个整型元素的一维数组的指针。这句话是正确的吗?
若有定义:int(*p)[4],则p是一个指向含有四个整型元素的一维数组的指针。这句话是正确的吗?
日期:2019-07-10 09:16:53 人气:1
正确的。
数组指针是指向数组地址的指针,其本质为指针;指针数组是数组元素为指针的数组(例如 int *p[4],定义了p[0],p[1],p[2],p[3]三个指针),其本质为数组。数组指针的使用在某些情况下与指针数组很相似,要注意区别。
p是一个指针变量,它指向包含4个int元素的一维数组,此时p的增量以它所指向的一维数组长度为单位。
*(p+i)是一维数组a[i][0]的地址;*(p+2)+3表示a[2][3]地址(第一行为0行,第一列为0列),*(*(p+2)+3)表示a[2][3]的值。
扩展资