66问答网
所有问题
定义一个数组a[4] a表示地址 还是表示一个指针变量,里面存放着这个数组的初始地址?
定义一个数组a[4] a表示地址 还是表示一个指针变量,里面存放着这个数组的初始地址?
举报该问题
推荐答案 2019-06-04
一维数组a[4]中数组名a表示数组中第一个元素的首地址,相当于一个常量指针,a的指向不可以修改,但是a指向的内存空间的内容可以修改。&a表示一维数组的首地址。
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://66.wendadaohang.com/zd/xsD9Ds9s22DDxU2x2D.html
相似回答
定义数组变量a[],
那么a本身就是
一个指针
么?
答:
在编程语言中一般用变量的名字来取它的值。
指针变量的值是地址,而数组名本身就代表数组的首地址
,所以可以把数组名也看成指针。只不过数组名是不可改变其值的,所以可以看作常量指针。
int (*p)[4]和 int
a[4]
; int *p=a;有本质区别么, int (*p)[4]如何...
答:
第一个是
指针,
指向的是有4个元素的数组,是
一个数组指针
(不是
指针数组
)。int
a[4]
;int *p=a,把a的首地址赋值给p,p=a;int main (){ int a[4]={0};int (*pi)[4];pi=a;return 0;}
C语言若已
定义
"int
a[
3]
[4],
(*p)[4];"下列赋值表达式中正确的是 A. p...
答:
这样说其实我觉得很不直观。
实际上就是指数组a[4]的0,1,2,3对应的地址
。因为前面说了,数组和指针极度类似,a[1]指的是数组a[4]的第1个位置里面的值2。而*(a+1)也是这个值。那么&a[0]就相当于&(*(a+1)),那这不就是重复啰嗦吗。*是取(a+1)这个地址里面的值。&则是取这个值...
假定a为
一个
整形
数组
名,则元素
a[4]的
字节
地址
为___.
答:
首先a若
表示数组
名,则a等价于数组首个元素的
地址,
即a[0]
的地址
。数组在内存中是以线性的方式连续存储的,就是a[0]、a[1]、a[2]···这样连续存放。其中一个元素的地址可由首地址加上偏移量计算出,即a[i]的地址 = a[0]的地址 + i * 数组元素类型所占的字节数。所以:
a[4]的
字节...
C语言:简述一下“
数组
和
指针的
关系”?
答:
数组的
存储空间,不是在静态区就是在栈上。指针:指针很灵活,它可以指向任意类型的数据。指针的类型说明了它所指向地址空间的内存。指针:由于指针本身就是
一个变量,
再加上它所存放的也是变量,所以指针的存储空间不能确定。3.求sizeof 数组:数组所占存储空间的内存:sizeof(数组名)数组的大小:...
已经
定义一个
一维
数组a[4]
;&
a表示一个
二维数组吗?&a+
1表示
a[
1]
[0...
答:
前面的回答
有一个
非常搞笑的扯淡 数组不等于指针 **int同样很搞笑 还有不太明白为什么所有人都把a当做int处理。。。现假设a是T的
数组,
即T[4]。回到正题 &a 的类型是 T(*)
[4],
既不是二维
数组的
T[x][y],也不是二级指针的T**,故&a不
表示一个
二维数组。&a+1实际上跑到了a的后面。。
大家正在搜
定义一个数组a存放10个整数
对一维数组a的正确定义是
具有相同类型的指针变量p与数组a
用m表示a数组的个数
以下对二维数组a的正确定义是
若有数组定义char array
设数组a的定义为int
若有定义int a[3][4]
对一维数组a进行正确初始化
相关问题
若有定义:int(*p)[4],则p是一个指向含有四个整型元...
定义一个整型数组a[4]并从键盘输入各元素的值,利用指针变量...
定义a为四行五列的维整型数组,同时定义p为指向a数组首地址的...
我定义了一个指针数组,比如*a[15],我应该怎么初始化?
定义a为共有16个元素的一维字符数组,同时定义p为指向a数组...
指向数组的指针变量
C语言中,对于未初始化的指针变量,其默认值是一个地址,该地址...
数组名转为指针使用时,这个指针(原数组名)是如何定义的,它的...