c++ 编译器如何组织函数中初始化的变量来存储它们,以便计算机以最快的方式找到它们?
我知道编译器将它们一个接一个地放在堆栈上,但背后必须有一些逻辑,我在谷歌上搜索了几个小时,但我找不到任何东西。
例如:
int main()
{
float a;
int b;
char c;
double d;
}
由于 c++ 编译器在内存中的存储方式,这应该比下面的内存占用更多的内存。
当然,使用的确切位是相同的,但在下面的示例中它们应该以更有效的顺序存储。在下一个示例中,编译器会将这些变量存储在内存中的什么位置?据我了解,变量总是存储在一个块中,这样(logical number) % (number of bytes the datatype) = 0
int main()
{
char c;
int b;
float a;
double d;
}