请教一个C++问题

请教一个C++问题,64位系统的指针大小也是4字节,也就是32位,那么指针如何访问大于4字节的地址
全部评论
不不不,64位指针是8字节的,你前提就错了
点赞 回复 分享
发布于 2018-10-23 18:49
64位向下兼容的,你编译的时候可以选以32位编译也可以选64位编译。
点赞 回复 分享
发布于 2018-10-23 19:48
64位的指针就是64位的。 不过64位的Windows可以运行32位程序倒是没问题,此时虚拟地址空间就是4GB(系统部分也算上)。你的程序应该是编译为32位了。 32位的Windows其实也是可以通过AWE访问大于4GB的地址空间的,只是需要手动管理内存页面。
点赞 回复 分享
发布于 2018-10-23 19:05
操作系统和应用程序又不一样,64位操作系统跑32位应用程序是没问题的。同一块寄存器,64位都用上就叫rax,32位就叫eax。指针的多少是跟着编译走的,32位应用程序的地址空间就是那么大,超是超不出了。而且还有什么叫“大于4字节的地址”,是虚拟地址还是物理地址?
点赞 回复 分享
发布于 2018-10-23 18:55
你编译器是32位模式吧
点赞 回复 分享
发布于 2018-10-23 17:47

相关推荐

01-04 07:53
门头沟学院 C++
心愿便利贴:工作了以后回头再看待这个问题,从客观的视角来讲是因为每个人对自己的要求不同,学习好的人对自己的要求很高,所以觉得考不好就天塌了,认为自己学习好并且值得一份好工作的人也是一样,找不到符合自己预期的工作肯定也会觉得是侮辱,牛客上有很多名校大学生,肯定会存在这种好学生心态啊,“做题区”从来都不是贬义词,这是大部分普通人赖以生存的路径,这个有什么好嘲讽的,有“好学生心态”没有错,但是不要给自己太大的压力了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务