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