对指针变量取地址_C++指针的概念、定义和指针运算(学习笔记:第6章 07)

指针的概念、定义和指针运算

内存空间的访问方式

  • 通过变量名访问(定义一个变量就是将变量名与若干字节的内存空间结合起来,之后可以在这个名字的作用域范围内,用变量名访问内存空间)
  • 通过地址访问

指针的概念(地址类型的变量)

  • 指针:内存地址,用于间接访问内存单元
  • 指针变量:用于存放地址的变量

指针变量的定义

  • 例:
static int i;
static int* ptr = &i;

94a78e1eef4d36c2c43b12d17efcc7c0.png

&取地址运算符

定义指针类型的数据,用运算符*。

问:定义指针类型ptr,*ptr不就可以了吗?为什么前面还要加个int?
答:定义指针是不仅仅要说明它是指针,而且要说明它所指向的对象是什么类型,
因为将来要通过指针去访问对象,如果不知道指针所指的对象是什么类型,当你拿到起始单元的地址后,取数据出来的时候,就不知道应该取多少个字节。不知道类型就不知道它占的字节数,就不知道该一次性处理几个字节,所以在C++中要求定义指针的时候必须定义它指向的对象的类型。

使用指针变量

  • 通过指针访问变量i的空间,例:
*ptr = 3;

2207694116c8f4c200ff7a83ee4efaed.png

与地址相关的运算——“*”和“&”

  • 指针运算符:*
  • 地址运算符:&
指针运算和地址运算互为逆运算
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值