A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© Jerry1 中级黑马   /  2016-5-9 12:17  /  1334 人查看  /  11 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

为什么指针要占8个字节?

11 个回复

倒序浏览
stud 来自手机 中级黑马 2016-5-9 12:23:43
沙发
64位系统才占8个字节。至于为什么,坐等大神答案…
回复 使用道具 举报
不是长颈鹿2 来自手机 中级黑马 2016-5-9 12:23:46
藤椅
Jerry1 发表于 2016-5-9 12:17
为什么指针要占8个字节?

也好疑惑,同问啊

点评

可以一起探讨  发表于 2016-5-9 23:39
回复 使用道具 举报
规定的,不同编译器可能还不同,但是同一编译器,肯定是相同的
回复 使用道具 举报
Jerry1 来自手机 中级黑马 2016-5-10 23:38:30
报纸
TGII 发表于 2016-5-10 00:35
规定的,不同编译器可能还不同,但是同一编译器,肯定是相同的

哦哦!那他是怎么存放地址的?
回复 使用道具 举报
你把指针理解成一个变量就明白了,这个变量存放的是我们可用内存的地址,32位系统,我们可用的地址空间就是0-FFFFFFFF,64位系统我们可用的地址空间是0-FFFFFFFFFFFFFFFFF,所以就分别是4字节和8字节。
回复 使用道具 举报
系统规定的
回复 使用道具 举报
Jerry1 中级黑马 2016-5-11 23:51:21
8#
stud 发表于 2016-5-9 12:23
64位系统才占8个字节。至于为什么,坐等大神答案…

好吧,好像大家都是这么说的,就是系统给定的,也不知道为什么这么弄

点评

这个要问权威人士!!  发表于 2016-5-12 12:31
回复 使用道具 举报
Jerry1 中级黑马 2016-5-11 23:52:39
9#
kedt5200 发表于 2016-5-11 00:49
你把指针理解成一个变量就明白了,这个变量存放的是我们可用内存的地址,32位系统,我们可用的地址空间就是 ...

按这个理解的话,那我电脑的64位的系统是不是内存可以做到很大
回复 使用道具 举报
Jerry1 发表于 2016-5-11 23:52
按这个理解的话,那我电脑的64位的系统是不是内存可以做到很大

是的,32位系统最大只支持4G的内存,64位系统才能支持超过4G内存。我们程序使用的都是虚拟的地址空间,只是理论上有这么大,最终程序运行时,会有操作系统映射到物理内存上。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马