77问答网
所有问题
int *p int a[4][5] p=a和p=&a[0][0]的区别
如题所述
举报该问题
其他回答
第1个回答 2011-12-28
有区别,a是行地址 &a[][]是列地址
a和&a[]等价
上面其实a和&a[],&a[][]是一个地址
但是若p=a;p++就是&a[1]
p=&a[][];p++就是&a[0][1];
p=a;p++和&a[1]等价
本回答被网友采纳
第2个回答 2011-12-29
p=a,p是指向a的首地址也就是首行地址,p=&a[0][0],是指向首行地址的首个地址值
第3个回答 2011-12-28
好像没区别吧
相似回答
...定义指针变量
int
*p
,那么请问
p=a与p=&a的区别
是什么
答:
在数组中,数组名表示首地址常量。
a等同于&a[0]。所以p=a。就是p指向a首地址。p=&a是错的,a已经是地址里
。可以写p=&a[0]。
c语言数组中
*p=a
,
与p=&a[0]
,有什么
区别
?跪求!!!
答:
如果a是数组,那么没
区别
,都指向数组第一个元素
int
*p=a和int
*p=&a
有什么
区别
?
答:
int
*p=&a
其实是两个语句 等价于 int *p; p=&a;如果a是int型,int
*p=a
是错误的,正确的应该是 int *p; p=&a;在定义的时候不能给p直接赋值整型,只能赋值int型地址 即 &a;如果要给p指针指向的地址赋值,就可以*p=a;但不能在定义
*p的
时候直接赋整型。
C语言
int
a[5]
,
*p
;
p=a
;
和p=&a
;的对错问题~希望详细点,谢谢啦_百度知 ...
答:
对于int a[5],*p;p=a; 或p=&a[0]是正确的 p=&a严格来说是错误的 首先要搞清楚a与&a的区别:a表示数组首元素的首地址,即元素a[0]的地址;&a表示整个数组的地址。
二者的值是相同的,但意义并不一样
。正如成都市政府与四川省政府的地址都在成都,但二者表示的含义不同。如下图所示,a...
c语言中
int*p=a与int*p=&a
有什么
区别
???求大侠帮忙!!!
答:
区别
很大。第一个
int
*p = a
;这是把a给一个指针,一般a是指针或数组,否则可能会造成很大错误。int
*p = &a
;这是把a的地址给p,一般a可以是一个整型变量。
*p=a
[0]
p=&a[0] 的区别
答:
p=a
[0]是指将p指向的空间内容赋值为a
[0]的
值
p=&a[0]
是指将p指针指向的空间更改为a[0]存放的空间 这两个完全不一样,虽然现在访问
*p
值一样,但是原理完全不一样
数组问题
int
a[5]
,
*p
;
p=a
;
p=&a[0]
;p=&a;都是什么含义
答:
int
a[5]
;//a是指针常量,表示的是数组首元素的地址,即a=&a[0]。int
*p
=a;p=&a[0];//因为a=a[0],所以
p=a 和p=&a[0]
是等价的。p=&a//int *p,p是一个指向int类型的指针,而&a表示的是指向整个数组的指针(取一个数组名得地址所产生的是一个指向数组的指针)。p是int类型的...
大家正在搜
int a[5],*p=a
int a[10],*p=a;
*p=&a和p=&a
int*p=&a
int*p[4]
int (*p)[3]
int **p
intp的含义
语句int *p;说明了