CSDN论坛 > C/C++ > C语言

唉,指向二维数组的指针,又错,又错 [问题点数:20分,结帖人napoleonpan]

Bbs1
本版专家分:47
结帖率 100%
CSDN今日推荐
Bbs2
本版专家分:138
Bbs1
本版专家分:47
Bbs4
本版专家分:1784
Bbs4
本版专家分:1253
Bbs1
本版专家分:47
Bbs7
本版专家分:22295
Blank
红花 2004年2月 C/C++大版内专家分月排行榜第一
Blank
黄花 2004年1月 C/C++大版内专家分月排行榜第二
Blank
黄花 2005年9月 Linux/Unix社区大版内专家分月排行榜第二
2005年5月 Linux/Unix社区大版内专家分月排行榜第二
Blank
蓝花 2005年8月 Linux/Unix社区大版内专家分月排行榜第三
2005年6月 Linux/Unix社区大版内专家分月排行榜第三
Bbs4
本版专家分:1784
Bbs4
本版专家分:1784
Bbs4
本版专家分:1784
Bbs1
本版专家分:47
Bbs1
本版专家分:47
匿名用户不能发表回复!
其他相关推荐
微机实验及课程设计ppt
《微机实验及课程设计》ppt, 简单明了,又清晰。不要错过了。
C/C++中二维数组和指针关系分析
在C/c++中,数组和指针有着密切的关系,有很多地方说数组就是指针式错误的一种说法。这两者是不同的数据结构。其实,在C/c++中没有所谓的二维数组,书面表达就是数组的数组。我猜想是为了表述方便才叫它二维数组。        在本文中,我也就叫它二维数组。在C/C++中,二维数组是数组的数组。数组的每一个元素是一个数组。说起来有点绕,大家都知道,一维数组也和指针那关比较密切,在本文中不重点阐述,下
C语言二维数组的指针及首地址问题
若arr是一维数组名,我们知道*arr就是arr[0],就是*(arr+0)。因为arr是数组的首地址,*arr就是取首地址所指元素,就是数组的第一个元素。 同样的道理,arr是二维数组名时,*arr也是取arr的第一个元素,但是此时arr所指的元素是一个一维数组,所以,实际上arr所指元素是一维数组的首地址。 就按arr[3][4]这个例子来看:3行4列数组arr可以理解为arr[0],ar
为什么不能用二级指针直接指向二维数组
先上代码:int a[2][3]={1,2,3,4,5,6};//2行3列的int型数组int **pp=a;//编译出错,不能用二级指针直接指向二维数组int (*p)[3]=a;//对,p是指向一维数组的指针,可以指向二维数组int *p1=a[0];//可以,p1也是一维指针,可以指向二维数组可以将上述的代码自己上机试试。按理说一维数组对应一维指针,即类似于int a[3]; int *p=a
指向一维数组的指针变量和指向二维数组的指针变量---注意其指针表示
指向一维数组的指针变量和指向二维数组的指针变量以及指针数组的区别 一、指向一维数组的指针变量   设一维数组为a[n] 定义方法:  *指针变量名 即 *P  这个p一般指向的一维数组的首地址,即p=a,或者p=&a[0];p,a,&a[0]均指向同一单元,它们是数组a的首地址,也是0 号元素a[0]的首地址。p+1,a+1,&a[1]均指向1号元素a[1]。类推可知a+
怎么用指针操作二维数组
本人第一次发博客,请大家多多指教 我们都知道一维数组的我们都很熟悉: int a[5] = { 1,2,3,4,5 }; int*p = a; int i, j; 这里p指针是int型指针,这里的赋值是将数组a的内存中的首地址啊a【0】在内存中的位置,地址传给p,这样p就能代表a数组了 这时我们可以用平p【1】,p【2】……依次代表数组a【1】,a【2】……; 接下来我们看二维数
c++中创建一个指针指向一个一维数组、二维数组的方法
1.一维的:int *p=new int[n];//n为数组长度 2.二维的:int **p=(int **)new int *[n];//n为数组长度
二维数组与指针、指针数组、数组指针的用法
二维数组和指针⑴ 用指针表示二维数组元素。要用指针处理二维数组,首先要解决从存储的角度对二维数组的认识问题。我们知道,一个二维数组在计算机中存储时,是按照先行后列的顺序依次存储的,当把每一行看作一个整体,即视为一个大的数组元素时,这个存储的二维数组也就变成了一个一维数组了。而每个大数组元素对应二维数组的一行,我们就称之为行数组元素,显然每个行数组元素都是一个一维数组下面我们讨论指针和二维数组元素的...
二维数组、指针数组、行指针、二级指针间的关联
二维数组、指针数组、二级指针、行指针互转 1. 一维数组 在讲二维数组之前,先回忆一维数组。 定义一个一维数组int a[10],其内存结构如图:   图1 在中括号[]之前的a表示数组的首地址,a+i则表示第i个int型数据的地址,通过*解引用,来索引具体的数据。 2. 二维数组与指针数组、二级指针   图2 先有如下定义: int **q; int *p[3]; in
每日一C,指向一维、二维数组的指针及数组作为函数形参的思考(二)
时间:2017/06/01 20:49 指向一维、二维数组的指针 例:int vector[10], *vp=vector;//① int vector[3][10], *vp=vector;//② ①合法,它为一个整型数组分配内存,并把vp声明为一个指向整型的指针 ②为何不合法,vp的初始化是有问题的,因为vector并不是一个指向整型的指针,而是指向一个指向整型数组的指针
关闭