c++菜鸟问基础

能详细解释下指针和数组吗... 能详细解释下指针和数组吗 展开
 我来答
吴勇一家人
2012-03-12 · TA获得超过2407个赞
知道小有建树答主
回答量:304
采纳率:50%
帮助的人:73.4万
展开全部

指针是C/C++的精华,而指针和数组又是一对欢喜冤家, 很多时候,会有人说“指着和数组是相同的”,这是一种非常危险的说法,并不完全正确。在一定的环境中,指针和数组是等同的,并非所有情况下如此。

指针和数组的定义:

    指针是指针,指针变量存储的是一个地址,用来间接访问数据,在32位系统下,一个指针变量(包括void指针)始终占4个字节的空间。指针可以指向任何内存空间,但不是任何内存空间都可以通过指针去访问。

    数组是数组,定义一个数组之后,编译器便根据该数组元素的类型和个数在内存开辟一段连续的空间来存放数据,从而直接访问数据。

》》》》上图是数组读取数据,下图是指针》》》》》》

从上面的图中可以看出,指针和数组根本就是两个完全不一样的东西。对于数组,由于编译器在编译的时候就已经知道每个符号的地址,因此如果需要一个地址来执行某种操作,可以直接进行操作,并不需要增加指令首先取得具体地址,对于数组就是如此;而对于指针,必须在运行时首先取得它当前的具体值然后才能进行引用。

紫月居士
2012-03-12 · TA获得超过416个赞
知道小有建树答主
回答量:256
采纳率:0%
帮助的人:149万
展开全部
指针是一个变量(一个数据单元),该变量存储着一个地址。
数组是一种数据结构,由一系列同类型的(即同大小的)连续地址构成。
对于数组的运算,其实是基于地址的调用。指针则是提供了一种方便的选取地址的手段。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
软件测试微课堂
2012-03-13 · 超过18用户采纳过TA的回答
知道答主
回答量:169
采纳率:16%
帮助的人:12.8万
展开全部
指针是C/C++的精华,而指针和数组又是一对欢喜冤家, 很多时候,会有人说“指着和数组是相同的”,这是一种非常危险的说法,并不完全正确。在一定的环境中,指针和数组是等同的,并非所有情况下如此。
指针和数组的定义:
指针是指针,指针变量存储的是一个地址,用来间接访问数据,在32位系统下,一个指针变量(包括void指针)始终占4个字节的空间。指针可以指向任何内存空间,但不是任何内存空间都可以通过指针去访问。
数组是数组,定义一个数组之后,编译器便根据该数组元素的类型和个数在内存开辟一段连续的空间来存放数据,从而直接访问数ZHU
从上面的图中可以看出,指针和数组根本就是两个完全不一样的东西。对于数组,由于编译器在编译的时候就已经知道每个符号的地址,因此如果需要一个地址来执行某种操作,可以直接进行操作,并不需要增加指令首先取得具体地址,对于数组就是如此;而对于指针,必须在运行时首先取得它当前的具体值然后才能进行引用。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式