C++ 中指针和引用有什么区别

C++ 中指针和引用有什么区别详解

1.从内存上来讲  系统为指针分寸内存空间,而引用与绑定的对象共享内存空间,系统不为引用变量分配内容空间。

2指针初始化以后可以改变指向的对象,而引用定义的时候必须要初始化,且初始化以后不允许再重新绑定对象。

3.所以引用访问对象是直接访问。指针访问对象是间接访问。

4。如果pa是指针,那么*pa就是引用了。

但是两者在作为形参的时候非常相似,区别是指针拷贝副本,引用不拷贝。程序如下:

  #include<stdio.h>    void pt(int * pta,int * ptb)    {    int *ptc;    ptc=pta;pta=ptb;ptb=ptc;    }    void ref(int &ra,int &rb)    {    int rc;    rc=ra;ra=rb;rb=rc;    }    void main()    {    int a=3;int b=4;    int *pa=&a;int *pb=&b;    pt(pa,pb);    printf("zhizhen: a=%d,b=%d\n",a,b);    ref(a,b);    printf("yinyong: a=%d,b=%d\n",a,b);    }

输出结果如下图:

  zhizhen: a=3,b=4    yinyong: a=4;b=3
(0)

相关推荐

  • 指针和引用的相同点和不同点的总结

    相同点: 都是地址的概念: 指针指向一块内存,它的内容是所指内存的地址:而引用则是某块内存的别名. 不同点: 指针是一个实体,而引用仅是个别名: 引用只能在定义时被初始化一次,之后不可变:指针可变:引 ...

  • Word2007中插入交叉引用的设置

    学到这里,在Word2007文档中编辑的功能学得差不多了,前面我们学了为文本添加注释的方法,如脚注和尾注.题注以及对书签功能的介绍.而现在小编要把基础知识升级下,对交叉引用做个详细的介绍. 第1步,打 ...

  • 在Word2003中使用交叉引用

    使用Word2003编辑长文档时,由于文档内容非常庞大,如果能在文档中建立一些直接返回目录的链接,对于文档的浏览与查看将是非常方便的.在Word2003中使用交叉引用可以帮助用户快速浏览Word长文档 ...

  • Excel条件格式中的相对引用和绝对引用

    Excel条件格式中的相对引用和绝对引用

  • 在Word中,如何在书签中插入交叉引用

    某大学生在写毕业论文时,想在在论文第9页某处,想引用一个定义,而该定义当前是在第3页中,通常在需要引用处可以定上"参见第3页中的定义",但如果添加或删除文字,或者引用的定义不再在第 ...

  • Excel中的相对引用和绝对引用

    Excel中的相对引用和绝对引用 因为相对引用和绝对引用在很多操作中都会用到,比如说:条件格式.数据有效性.函数公式.高级图表甚至宏和VBA代码. 搞不清楚引用方式的话,这么多高大上的应用一切都免谈了 ...

  • 在excel表格中使用vba引用单元格区域

    今天为大家介绍在excel中使用vba来引用单元格区域方法,不会的朋友可以参考本文,来看看吧! 步骤 1.首先我们打开一个工作样表作为例子. 2.使用alt+f11组合快捷键进入vbe编辑器,插入一个 ...

  • 怎么在Excel文档中设置绝对引用

    Excel文档常常被用来统计各类数据,有时候为了方便计算,需要设置绝对引用,接下来小编就给大家介绍一下具体的操作步骤.具体如下:1. 首先第一步根据下图箭头所指,打开电脑中需要编辑的Excel文档.2 ...

  • Word如何在书签中插入交叉引用

    现在大部分人都在使用Word编写论文,有些用户不知道如何在书签中插入交叉引用,接下来小编就给大家介绍一下具体的操作步骤.具体如下:1. 首先第一步根据下图箭头所指,打开电脑中的Word文档.2. 第二 ...