C++个人快速理解指针

什么是指针?什么是变量?
理解a:都一样,都是变量,都是用内存放东西。
理解b:就像2张桌子,上面放2种水果,l个放指针,1个放变量,只是数据结构不一样。

相同点:用理解B中的活就是不管里面放什么,2张桌子不变。
即:内存地址不变。

不同点:里面放的东西不一样。指针里面放的是内存地址,普通变量放的是 普通数据!

。例子: int b=10; 设为局部变量
int *a=b; 设为局部变量
汇编: ∥申请内存
mov ebp,esp
sub esp,8
其中b地址为ebp-8
其中a地址为ebp-4
mov 【ebp-8】,10 ∥b=10
lea eax,【ebp一8】 ∥eax=&b
mov 【ebp一4】,eax ∥*a=b

上面不理解大概说下过程:①首先申请2块内存,这2块内存地址不变,其中b里面放10,a不确定。
②把b的地址放到丨个通用寄存器里
③再把通用寄存器的东西放a里面
即:a里放的是b地址

业余人员记录下以前业余学的,匆喷,高兴就点个赞

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值