登录
首页 >  Golang >  Go问答

多个整数是否存储在同一内存位置以节省空间?

来源:stackoverflow

时间:2024-04-13 08:54:25 461浏览 收藏

最近发现不少小伙伴都对Golang很感兴趣,所以今天继续给大家介绍Golang相关的知识,本文《多个整数是否存储在同一内存位置以节省空间?》主要内容涉及到等等知识点,希望能帮到你!当然如果阅读本文时存在不同想法,可以在评论中表达,但是请勿使用过激的措辞~

问题内容

如果我在具有 64 位内存位置的计算机上用 Go/C 声明两个 32 位整数。它们可以存储在同一内存位置吗?最左边的 32 位存储第一个整数,最右边的 32 位存储第二个整数。或者您声明的每个变量都存储在其自己的内存位置中。

换句话说:1000 x int32 使用与 1000 x int64 相同数量的内存位置?


正确答案


寄存器和 RAM 内存是两个不同的东西。您的编译器通常会决定将哪些变量保留在何处。对于 RAM,如果每个变量使用 32 位,地址仍然会不同。当然有可能它使用 64 位并“浪费”32 位(如果这可以提高性能)。对于寄存器,编译器可以将低位和高位用于不同的变量,但几乎肯定不会,因为这会降低性能。

终于介绍完啦!小伙伴们,这篇关于《多个整数是否存储在同一内存位置以节省空间?》的介绍应该让你收获多多了吧!欢迎大家收藏或分享给更多需要学习的朋友吧~golang学习网公众号也会发布Golang相关知识,快来关注吧!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>