深度剖析指针和数组

什么是指针?什么是数组?

在计算机科学中,指针是编程语言中的一个对象,利用地址,它的值直接指向存在电脑存储器中另一个地方的值。由于通过地址能找到所需变量单元,可以说,地址指向该变量单元。因此,将地址形象化的称为指针。意思是通过它能找到以他为地址的内存单元。而数组是一个有限空间,他与指针是两码事,有时候很容易混淆他们两个。


即指针就是用来存放地址的变量!

  • 指针是存放地址才出现的,地址是为了标示一块空间的
  • 指针让地址有地方存放,指针让内存的访问更加方便
  • 指针的大小在32位平台是4个字节,64位平台是8个字节

二级指针:指向指针变量的指针。


剩下的比较简单的一位数组、一级指针、二维数组、二级指针我就不一一介绍了,可以去看我之前的博客

https://blog.csdn.net/jochebed666/article/details/79917376

而我下面要说的是指针数组、数组指针的理解。

数组指针顾名思义是一个指针,而指针数组是一个数组。

扫描二维码关注公众号,回复: 1043317 查看本文章

举个栗子:

int *p[10];

int (*p)[10];

第一个是指针数组,第二个是数组指针。下图是我理解的关于指针数组和数组指针的区别:


所以关于指针数组还是数组指针,我需要知道的是他到底是指针还是数组,指向的是啥就可以了。



如有错误,还望大家多多指教!




猜你喜欢

转载自blog.csdn.net/Jochebed666/article/details/80377352
今日推荐