99问答网
所有问题
关于数组指针 c++
对于数组
int a[3][4];
a的值为a[0][0]的地址;
a[0]和*a的值也为a[0][0]的地址。
那么为什么既然a和*a一样,那为什么**a和*a就不一样了。
初学 求解释。
举报该问题
推荐答案 2012-08-17
在二维数组中 a 和 a[0](或a[1],a[2])都是指针,但不是同一种类型的指针。a是指向一个数组的指针,而a[0]是指向一个整数的指针。这是不同类型的指针。
a 表示的是 a[0]的首地址,即*a = a[0],
而a[0]的内容还是一个地址,是a[0][0]的地址。
**a = *(a[0]) = a[0][0],是a[0][0]的内容数值。
不能因为两个指针指向同一个地址,就认为这两个指针一定是同一类型的指针。
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://99.wendadaohang.com/zd/e7BvWjeWO.html
其他回答
第1个回答 2012-08-17
首先**a != *a;
**a = &(*a);
所以**a是*a指针地址的值
第2个回答 2012-08-16
*a 是 a[0][0]的地址,**a则是读取a[0][0]的内容了~
相似回答
关于数组指针
c++
答:
在二维
数组
中 a 和 a[0](或a[1],a[2])都是
指针
,但不是同一种类型的指针。a是指向一个数组的指针,而a[0]是指向一个整数的指针。这是不同类型的指针。a 表示的是 a[0]的首地址,即*a = a[0],而a[0]的内容还是一个地址,是a[0][0]的地址。a = *(a[0]) = a[0][0...
c++
关于数组
、
指针
的程序
答:
int n[][3]={10,20,30,40,50,60};int main(){ int (*p) [3]; //这里等价于int *p[3] 吗?为什么要用括号?(不一样(*p) [3]是指向数组的指针,int *p[3]是
数组指针
)p = n;(意思是用指针指向数组)cout<<p[0][0]<<","<<*(p[0]+1)<<","<<(*p)[2]<<endl;(...
c++指针数组
怎么用,还有指针数组和
数组指针
答:
int (*p)[4];//
数组指针
p是指针,指向一维数组,每个一维数组有4个int元素 int i,j;int *q[3];//
指针数组
q是数组,数组元素是指针,3个int指针 p=m; //p是指针,可以直接指向二维数组 printf("--数组指针输出元素--/n");for(i=0;i<3;i++)/*输出二维数组中各个元素的数值*...
c/
c++
中的
指针
的应用及注意问题
答:
例如:int a=1;a就表示指针常量(“”表示取地址运算符,也即引用)。int *b,b表示的是指针变量(注意,是b表示指针变量而不是*b),*表示要说明的是指针变量。大家注意int *b[2]和int(*b)[2]是不同的,int *b表示一个
指针数组
,而int (*b)[2]表示含有两个元素的int指针,这里要...
c++
数组
和
指针
答:
我们发现,取
数组
地址(&a)得到的
指针
pa和取数组首元素(&a[0])得到的指针pi是两种不同类型的指针,pa是一个指向有三个int型元素的数组的指针,pi是一个指向int型对象的指针。虽然pi和pa的值相同,但所指的内存空间不同,pi所指的空间处于pa所指空间的内部,而且是内部最靠前的部分。pi和pa所指...
c++
数组 指针
相关
答:
k=x; k存放x[0]地址,或者说k指向x[0]s=&k; s存放变量k地址,s指向k cout<<*(k
++
)<<","<<**s<<endl;相当于cout<<*k<<","<<*(*s)<<endl; k++;k指向x[0],则*k就是取x[0]存放的数据1 s指向k,*s就是取k存放的地址,*(*s)就是取得k存放的地址(这个地址指向x[0]...
有关c++
中
数组
与
指针
的关系
答:
1,
数组
是一块内存连续的数据。2,
指针
是一个指向内存空间的变量。对于数组来说,数组的首地址,也可以用指针来表示操作,如:int a[10];int *p,n;p = a;
对
第一个元素取值,可以用几种方法:n =a[0];n = *p;n = p[0];n = *(p+0) ;3,不同的地方是数组是由编译器分配的空间,...
关于c++指针
的问题请高手赐教
答:
1、表达式中的
数组
名(与声明不同)被编译器当作一个指向该数组第一个元素的
指针
因此如a[i]这样的访问都被编译器改写或解释为*(a+i)的形式,同样取下标操作符的操作数是可交换的,所以a[3]可以写成3[a],不过通常你不会这样做。2、下标总是与指针的偏移量相同,下标*sizeof(元素类型)就是...
C++
指针数组
答:
1:int *p[2]好理解的,
指针数组
,p[0], p[1]都是一个指针 2.int (*p)[2],定义指向二维数组的指针,此二维数组的第二维必须是2.如当有int (*p)[2]时:int a[3][3]; p=a;是错的.int a[3][2]; p=a;是正确的。同理 int (*p)[3][4];定义指向三维数组的指针,此三维...
大家正在搜
c语言数组指针和指针数组
数组和指针的关系
怎样用指针指向数组
指向数组的指针
指针变量指向数组
数组与指针
指针数组如何赋值
指针数组赋值
指针数组的使用