【c++】指针与引用的区别

本文详细解释了指针和引用在C++中的概念及其区别。指针是一个变量,其值为另一个变量的内存地址;而引用是变量的别名,没有独立的存储空间。文章通过代码示例展示了如何使用指针和引用,并对比了它们的地址和值。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

指针其实就是一个变量,和其他类型的变量是一样的,它是一个占用四字节的变量(32位机上),与其他变量的不同之处就在于它的就是值是一个内存地址,指向内存的另外一个地方。而引用则是变量的一个别名。

【例1】

#include <iostream>

using namespace std;

void main()
{
    int ival = 2014;
    int *pi = &ival;
    int &rval = ival;
    int jval = 4096;
    int xval = 8192;
    cout << "ival = " << ival << "\t";
    cout << "&ival = " << &ival << "\t";
    cout << endl;
    cout << "pi = " << pi << "\t";
    cout << "&pi = " << &pi << "\t";
    cout << "*pi = " << *pi << "\t";
    cout << endl;
    cout << "rval = " << rval << "\t";
    cout << "&rval = " << &rval << "\t";
    cout << endl;
    cout << "jval = " << jval << "\t";
    cout << "&jval = " << &jval << "\t";
    cout << endl;
}

【输出】:

【解析】:

上述代码中,定义了指针pi和引用rval,pi是一个指针变量,它指向整型变量ival,但pi本身的值为一个十六进制的地址值,而&pi为存储该地址值的地址,*pi则为整型变量ival的值,其是整型变量ival的一个别名,因此,&val的值即为存储变量ival的值,都是指存储ival变量的地址。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值