首页
题库
面试
求职
学习
竞赛
More+
所有博客
搜索面经/职位/试题/公司
搜索
我要招人
去企业版
登录 / 注册
首页
>
试题广场
>
数组和指针的区别
[问答题]
数组和指针的区别
查看答案及解析
添加笔记
求解答(0)
邀请回答
收藏(145)
分享
纠错
22个回答
添加回答
8
铁汁
数组名是指针常量,不可修改其指向。 但是数组名仅仅是一个符号,和数组的首元素公用内存地址。 而普通指针可以修改其指向的地址。 普通指针要占用实际的存储空间,具体占用的存储空间和操作系统的位数有关。32位操作系统指针占用32位,64位操作系统占用64位。
发表于 2019-02-06 15:28:50
回复(1)
7
求佛求学
指针是指向内存地址,内存大小通常由程序员分配;数组则是系统分配的连续内存空间
发表于 2019-01-04 20:47:42
回复(0)
5
清风折细柳
数组是系统自动分配的一块连续地址的内存,数组名存的是这块内存的入口地址,是一个地址常量,可以通过下标访问数组元素,加一减一会自动转化成加/减一个数组中所存数据类型的大小。当作为参数传递给函数时,退化成一个指针,使用时需要指定数组大小,否则容易读或写超出所分配空间的地址中的内容。 指针是一个地址变量,也可以用下标获取其后或其前的地址中的内容。具有极高的实用性和执行效率。
发表于 2019-03-01 13:41:29
回复(0)
1
TiAmo_9955
区别1:指针只占4个字节,而数组将根据其长度占据一定的连续的空间。 区别2:虽然在表达式中数组名解释为指向数组中第一个元素的指针,但是用sizeof(数组名)得到的是整个数组的大小而不是4。 区别3:指针是可以修改的左值,而数组名是不可以修改的左值 区别4:定义一个字符指针并初始化一个字符串和定义一个数组并初始化一个字符串是不一样的。
发表于 2019-05-02 20:01:01
回复(0)
1
沙漏s
简单来说,在内存中,指针(默认32位机下)恒定大小4字节,存储了你要指向某个地方的地址,那块地方是固定大小的区域(大小看你指针类型),数组就不一定了(看你要申请几字节),当然指针也会经常指向数组进行操作,虽然数组和指针很多用法看着一样,但是本质是两种不同的东西
发表于 2019-01-22 23:55:09
回复(0)
0
Chazyone
数组是特殊的指针,是所指向的内存空间和变量本身都不能被改变
发表于 2019-03-21 19:23:49
回复(0)
0
3号先生
数组不知道需要多少空间,会浪费空间,而指针可以要多少用多少
发表于 2019-03-11 16:48:37
回复(0)
0
梁小建
数组作为函数的参数时退化为指针,数组名为数组开辟内存的首地址。指针存放的为某块内存的地址,指针本身所占内存与操作系统有关,指针指向的地址值可以改变。若将数组首地址传给指针,指针也可以通过下标的方式操作数组。
发表于 2019-03-10 23:29:03
回复(0)
0
FENG华
数组,有连续的物理内存地址,数组名不可直接赋值,数组与数组首元素公用内存地址。指针,由程序员分配地址,存储其他指向地址。
发表于 2019-03-10 09:41:55
回复(0)
0
@FEI
数组名是指针常量,不可修改其指向。数组名仅仅是一个符号,它所占的内存空间是和第一个元素公用。而指针是可以修改其指向地址,并占有实际的内存空间,其所占内存空间位数和操作系统有关,32位操作系统占32位,64则占64位
发表于 2019-03-10 07:20:48
回复(0)
0
super1
数组是存放若干相同类型数据的集合。指针是变量,存放其它变量的地址。数组一般存放在栈或者静态存储区,指针的存放位置是不定的,数组之间不能相互赋值,而指针可以。
发表于 2019-03-07 09:39:47
回复(0)
0
努力做社畜
指针指向地址,通常由程序员分配空间,数组是有系统定义
发表于 2019-03-06 09:36:45
回复(0)
0
hokamyuen
指针是一个变量,数组名只是一个符号,而且数组在c++中可以通过数组名获取首尾迭代器
编辑于 2019-03-06 01:33:15
回复(0)
0
Edison0902
指针指向内存地址,数组是分配一段连续的内存
发表于 2019-03-01 15:18:42
回复(0)
0
tptao
当参数为数组时,数组退化为指针。即,函数将这个本身是数组的参数,当作指针对待
发表于 2019-02-26 10:53:09
回复(0)
0
Lukadoncic
数组 &a 和 a 等效 指针 &a 和 a 完全不同
发表于 2019-02-26 08:22:50
回复(0)
0
陈林达
数组和指针的区别
发表于 2019-02-23 19:06:41
回复(0)
0
唐长老。
指针指向地址,数组是用来存储数据的一种存储结构,就像数组是楼房里的住房,指针指向住户的门牌号
发表于 2019-02-23 11:05:46
回复(0)
0
李伟742475207
数组是一段字符集分为一维数组二维数组,二维数组分行和列,指针的运用是指向一段已定义变量储存地址头标题,从宏观角度看是从库中提取数据整合,微观角度是直接拿出数据,实现调用
发表于 2019-02-05 12:25:50
回复(0)
0
竹沥半夏2002
指针储存的是地址,而数组储存的是数据本身
发表于 2019-01-31 16:06:41
回复(0)
这道题你会答吗?花几分钟告诉大家答案吧!
提交观点
问题信息
测试工程师
C++
上传者:
小小
难度:
22条回答
145收藏
2939浏览
热门推荐
相关试题
运行 ldd hello 可以得到...
百度
C++
评论
(3)
明明的随机数
数组
评论
(3692)
来自
华为研发工程师编程题
已知a
40
=...
京东
职能
2019
财务
保险
评论
(1)
《拳皇97》最后BOSS是谁?
游戏常识
评论
(1)
《魔兽世界》中,下列不属于玩家可以...
游戏常识
评论
(1)
扫描二维码,关注牛客网
意见反馈
下载牛客APP,随时随地刷题