A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© alvin2015 中级黑马   /  2016-1-2 22:57  /  700 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

一直被指针和一维数组,二维数组的定义给晕的一愣一愣的,做个总结,了结这段撕心的痛。{:2_32:}

先来区分一下指针数组和数组指针:
指针数组重在数组,定义: 数据类型  *数组名[数组长度];数组元素为指针;如:int *arr[3];
数组指针重在指针,定义: 数据类型 (*数组名)[数组长度]; 指向数组的指针;如:int (*arr)[3];
这里结合自己的理解这样来记忆的:在定义中 带括号()的就是指针,没带括号()的就是数组。

接下来区分 一维的和二维的定义:
其实在定义上 一维的和二维的指针数组和数组指针 的外在形式的定义是一样的。重点在于定义中方括号[数组长度]中的数组长度所代表的意义。
一维的 [数组长度]指的是整个数组的长度。
二维的 [数组长度]中,指针数组中代表的是数组行数, 数组指针[数组长度]代表的是数组列数(这里可以通过代码段中数组的定义确定是一维还是二维来区分意义)。

1 个回复

倒序浏览
海棠依旧2046 来自手机 中级黑马 2016-1-2 23:11:04
沙发
顶起,这一块我也不明白,求大神来解
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马