美文网首页
C++学习笔记《指针,引用的使用及区别》

C++学习笔记《指针,引用的使用及区别》

作者: 非典型程序猿 | 来源:发表于2021-06-12 15:12 被阅读0次

指针用途

指针可以访问一个变量的实际存放的内存地址

指针定义

在使用前我们需要记住两个关键符 , * 表示取值符,表示获取指针指向内存中的具体数据,而 & 表示取址符,表示获取该变量存放数据在内存中的具体地址。

// 定义一个常量a
int a = 1 ;
// 定义一个的指针
int * p ;
// 将指针指向a的地址
p = &a;
// 输出p的地址
cout<< "p的地址为"<<(int)p << endl
// 输出指针p指向内存中保存的具体值
cout<< "p指向内存中的值具体为"<<*p << endl

指针所占内存

指针本身所占内存在32位操作系统为4个字节,在64位操作系统下占8个字节,它仅仅是存放一个地址而不关心这个地址具体所存放数据的内存大小。

野指针和空指针

指针本身的值是可以自己定义的,当我们创建了一个指针,指向一块未知地址,就可能会出现严重的错误,这样胡乱指向未知错误地址的指针变量叫野指针,空指针即指向地址为0的指针,它本身即不指向任何内存空间。

引用的使用

引用的使用需要用到关键字&,在定义时如下

// 定义一个常量a
int a = 1 ;
// 定义一个a的引用b
int &b = a

这样我们就创建了一个变量a的引用变量b,引用也可以说给变量a起了别名,此时可以理解为b是和a同样指向了同一个内存地址,只是变量的名字不相同而已,而且b一旦声明,那么它指向的内存地址不可改变,但内存中所存放的值是可以改变的。

引用和指针的使用区别

  • 指针是通过定义一个指针变量来访问变量的地址;
    而引用是为另一个变量创建了一个别名,可以共同访问同一个内存地址

  • 指针在没有const修饰的情况下可以继续修改本身所指向的内存地址;
    但引用必须要初始化,指向一个有效地址,且之后这个指向地址不可更改,即引用是一个必须初始化的常量指针。

相关文章

  • C++学习笔记《指针,引用的使用及区别》

    指针用途 指针可以访问一个变量的实际存放的内存地址 指针定义 在使用前我们需要记住两个关键符 , * 表示取值符,...

  • C++基础

    C++ 值传递、指针传递、引用传递详解C++中引用传递与指针传递区别 引用传递和指针传递的区别 引用的规则:(1)...

  • 指针和引用的区别

    参照lyd_253261362的专栏的文章详细介绍=====c++中的引用与指针的区别 c++中的引用与指针的区别...

  • C++智能指针

    引用计数技术及智能指针的简单实现 基础对象类 辅助类 智能指针类 使用测试 参考: C++ 引用计数技术及智能指针...

  • C++之指针和引用

    指针和引用的区别? 在C++的编码中我们发现很多地方都大量地使用引用,能用指针实现的功能改用引用几乎也能实现,甚至...

  • 指针和引用的辨析

    先来看两个图 指针与引用的区别 1.指针在C和C++中均有,而引用是C++独有的特性(*指针申明符号,&引用申明符...

  • java中的引用与c++中的指针的区别

    java中的引用与c++中的指针的区别 Java的引用和C++的指针都是指向一块内存地址的,通过引用或指针来完成对...

  • 随笔1

    c++ 指针和引用的区别 1 指针是指向一个地址,未初始化的指针没有分配内存,那么此时此时直接使用指针是危险的,所...

  • 面试系列之指针和引用的使用场景

    先抛出两个问题: 指针和引用有什么区别? 什么时候应该使用指针?什么时候应该使用引用? 指针和引用的区别 首先看一...

  • 绿盟面试准备

    C++基础知识 指针和引用的区别: 指针是一个变量 ,引用是别名.指针可以初始化为空, 引用必须初始化为具体的值....

网友评论

      本文标题:C++学习笔记《指针,引用的使用及区别》

      本文链接:https://www.haomeiwen.com/subject/npcieltx.html