首页 > 试题广场 >

“引用”与指针的区别是什么?

[单选题]
“引用”与指针的区别是什么?
  • 指针通过某个指针变量指向一个对象后,对它所指向的变量间接操作。程序中使用指针,程序的可读性差;而引用本身就是目标变量的别名,对引用的操作就是对目标变量的操作。
  • 引用通过某个引用变量指向一个对象后,对它所指向的变量间接操作。程序中使用引用,程序的可读性差;而指针本身就是目标变量的别名,对指针的操作就是对目标变量的操作。
  • 指针比引用更节省存储空间
  • 以上都不正确
推荐
答案:A
引用是变量的别名,指针值变量的地址,通过改变所指向的地址的值来改变变量的值,属于间接操作。所以A正确B错误
引用是别名,不占内存空间,指针的变量的地址,存储指针要占一定的内存空间,所以引用更节省内存空间
编辑于 2015-01-26 14:59:22 回复(4)
A

相同点:
1. 都是地址的概念;
指针指向一块内存,它的内容是所指内存的地址;引用是某块内存的别名。
区别:
1. 指针是一个实体,而引用仅是个别名;
2. 引用使用时无需解引用(*),指针需要解引用;
3. 引用只能在定义时被初始化一次,之后不可变;指针可变;
4. 引用没有 const,指针有 const;
5. 引用不能为空,指针可以为空;
6. “sizeof 引用”得到的是所指向的变量(对象)的大小,而“sizeof 指针”得到的是指针本身(所指向的变量或对象的地址)的大小;
7. 指针和引用的自增(++)运算意义不一样;
8.从内存分配上看:程序为指针变量分配内存区域,而引用不需要分配内存区域。



发表于 2015-01-26 13:34:26 回复(1)
我看了一遍A选项,说的很有道理,一咋看C ,简洁明了,就果断的选了C,捂脸捂脸!为啥不远C啊,
发表于 2018-06-17 18:30:14 回复(2)

纠正下,引用本质还是指针的,只不过编译器底层做了操作,引用是占用空间的。

发表于 2019-08-11 13:22:51 回复(0)

引用实质是一个指针常量,指向所引用的对象。

发表于 2017-09-08 09:22:01 回复(0)
使用指针可读性差,使用引用可读性更差,没毛病,就没有可读性好的时候
发表于 2017-08-24 16:22:02 回复(0)
A.     B说反了,C.引用比指针更节省内存.指针还要申请指针变量,引用直接是对原始数据的操作
发表于 2015-04-13 20:30:27 回复(0)
指针通过某个指针变量指向一个对象后,对它所指向的变量间接操作。程序中使用指针,程序的可读性差;而引用本身就是目标变量的别名,对引用的操作就是对目标变量的操作。此外,就是上面提到的对函数传ref和pointer的区别。
发表于 2014-10-25 00:26:11 回复(1)
指针和引用的区别可以从多个方面来讲,从初始化开始,指针,他是可以不用初始化的,而引用必须进行初始化,他必须绑定一个对象;从指向方面来看,指针的指向后期是可以更改的,而引用的指向是不能更改的,也用他就像一个顶层const指针,另外指针可以有多级指针,而引用他只有一级;从大小上看,对指针sizeof得到的是4/8字节,而引用sizeof得到的是实际对象的大小;从使用角度来看,当我们要取出指针所指向的资源,要使用*解引用符号,而引用可以直接使用,可读性强;从实现原理上看,引用底层还是使用的指针,不过是编译器给我们的语法糖罢了。
发表于 2023-09-07 12:34:29 回复(0)
指针它本身就是一个对象,不论是所指向的对象 还是从自身出发,它都是一个对象(符合左值表达式)。而引用它并不是一个对象,而是一个变量别名,对其别名操作就是对其变量进行操作。
发表于 2021-11-30 12:12:18 回复(0)
这题选D
发表于 2020-11-17 08:58:27 回复(0)
可读性差是怎么来的
发表于 2020-08-03 15:48:15 回复(0)
<p>指针不是指向对象的地址吗……</p>
发表于 2020-05-06 23:48:28 回复(0)

引用是变量的别名,指针是变量得地址


发表于 2020-02-28 18:25:39 回复(0)

引用是别名不占内存空间

发表于 2018-07-05 10:31:18 回复(0)
引用是别名,和原变量地址相同
发表于 2017-06-30 14:13:56 回复(0)
A,指针通过某个指针变量保存对象地址从而指向一个对象,对它所指向的变量间接操作。程序中使用指针,程序的可读性差;
引用本身只是给目标变量起了个别名,对引用的操作就是对目标变量的操作。
发表于 2015-10-20 13:55:17 回复(0)
A也有问题吧,使用引用会使可读性差吧
发表于 2015-07-12 11:46:51 回复(0)
AC
发表于 2015-01-08 17:30:19 回复(0)
A
发表于 2015-01-08 17:29:59 回复(0)