指针和引用的区别

1、指针和引用的区别

    对一个数据可以建立一个引用,它的作用是为一个变量起一个别名。

    如  int a; int &b =a;

    声明变量b为引用,并不需要另外开辟内存单元来存放b的值。b和a占内存中的同一个存储单元,他们具有同一地址。可以理解为:使变量b具有变量a的地址。

    注意****:1)引用不是一种独立的数据类型,对引用只有声明,没有定义。

                    2)声明一个引用时,必须同时使之初始化,即声明它代表哪一变量;

                    3)在声明一个引用后,不能再使之作为另一变量的引用。

    指针与引用的区别

1)引用是给另外一个变量起别名,所以引用不会分配内存空间,指针变量占据自己的内存;                        

2) 引用在定义的时候必须进行初始化,并且不能够改变。指针在定义的时候不一定要初始化,并且指向的空间可变。(注:不能有引用的值不能为NULL)

3) 有多级指针,但是没有多级引用,只能有一级引用。

4) 指针和引用的自增运算结果不一样。(指针是指向下一个空间,引用时引用的变量值加1)

5) sizeof 引用得到的是所指向的变量(对象)的大小,而sizeof 指针得到的是指针本身的大小。

6) 引用访问一个变量是直接访问,而指针访问一个变量是间接访问。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值