指针 引用的区别

一. 定义

  1. 指针: 是一个变量,只不过这个变量存储的是一个地址,指向内存中的一个存储单元.

2.引用: 跟原来的变量实质是一个东西,只不过是原变量的一个别名

int a = 10; int *p = &a;
int a = 10;      &b = a;
上面定义了一个整型变量和一个指针变量p,该指针变量指向a的存储单元,即p的值是a存储单元的地址.
 下面定义了一个整型变量a和这个整型a的引用b, 事实上a和b是同一个东西,在内存占有同一个存储单元.

二. 区别

  1. 可以有const指针 但是没有const引用
  2. 指针可以有多级, 但是引用只能有一级
  3. 指针的值可以为空,但是引用的值不能为空
  4. 指针的值在初始化的时候可以改变, 及指向其他的存储单元,而引用在初始化后就不能再改变.
  5. 引用得到的是指向的变量的大小,指针得到的是指针本身的大小
  6. 指针 和 引用的自增++运算意义不一样
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容