在VS2017中局部变量的内存地址分配
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在VS2017中局部变量的内存地址分配相关的知识,希望对你有一定的参考价值。
在VS2017中运行这个程序:
#include <stdio.h>
int main(void)
int num1;
int num2;
int num3;
int num4;
printf("%p\n%p\n%p\n%p\n", &num1, &num2, &num3, &num4);
return 0;
为什么在release模式下打印出来的地址大小num1 < num2 < num3 < num4,而在debug模式下打印出来的地址大小关系变成了num1 > num2 > num3 > num4?
这个程序没有使用变量的值,是在观察变量在内存中的地址分配。是否初始化都会出现这个问题。
追答所描述确实是比较有趣的现象,一般不太留意这类问题。也许,不同的编译器,会有不同的处理方式。
以上是关于在VS2017中局部变量的内存地址分配的主要内容,如果未能解决你的问题,请参考以下文章