刚开始学指针疑问,为什么不用普通变量储存地址,要专门发明指针变量来储存呢

C语言 码拜 8年前 (2016-04-10) 1229次浏览
刚开始学指针疑问,为什么不用普通变量储存地址,要专门发明指针变量来储存呢?
解决方案

40

普通变量存储不了地址,例如你定义一个变量给他赋值一个看起来像地址的数据
const int a = 0x000000c0;
这时a只是等于这么一个十六进制的值,你无法操作0x000000c0这个地址的内存(当然,即使是指针,假如这么定义,你们无法修改这个地址中的数据)
另外,最主要的,指针可以从堆上动态申请内存

20

原因是指令集里面有一种间接寻址的方式,抽象出来就是指针了

10

引用:

刚开始学指针疑问,为什么不用普通变量储存地址,要专门发明指针变量来储存呢?

在某些方面用起来方便吧,
其实指针存的也是数字,也有个别人,用来和数字间转来转去, 不过很少见。
就像有了刀子,还发明了锯子一样吧。(不知道刀子和锯子是哪个在先刚开始学指针疑问,为什么不用普通变量储存地址,要专门发明指针变量来储存呢


CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明刚开始学指针疑问,为什么不用普通变量储存地址,要专门发明指针变量来储存呢
喜欢 (0)
[1034331897@qq.com]
分享 (0)