VS2015使用小技巧 查看值类型int与引用类型string在栈中的地址、堆中的地址

来源:互联网 发布:阿里云好还是腾讯云好 编辑:程序博客网 时间:2024/06/05 20:10
镇场诗:慈心积善融学习,技术誓为大家学。善心速造多好事,前人栽树后乘凉。我今于此写经验,愿见文者得启发。
——————————————————————————————————————————————————————————


写好代码,

using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace ConsoleApplication5{    class Program    {        static void Main(string[] args)        {            int num = 1;            string s = "123";            Console.ReadKey();        }    }}

设置断点,



点击启动,在即时窗口处输入 &num



0x066be868就是Num在栈中的地址了。



看string类型的地址,

using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace ConsoleApplication5{    class Program    {        static void Main(string[] args)        {            int num = 1;            string s1 = "123";            string s2 = "123";            string s3 = "1234";            Console.ReadKey();        }    }}

设置断点,启动

在即时窗口输入后,效果是:

相同内容的字符串在栈中的地址是不同的,但是在堆中的地址相同


不同的内容的字符串,则堆与栈的地址都不同。




——————————————————————————————————————————————————————————
感恩帮助过我的人。博客的精髓在技术部分,更在镇场一诗。
写程序的人,是匠人。所以,欲善其事,必先利其器。
C#是一个优秀的语言,VS是一个优秀的编译软件,二者值得学习。如果您有一些不会的知识,咱们可以相互讨论。
如果您认为可以有改进的地方,有错误的地方,请留下评论,我会处理的。
注:如果我的博文无意中侵犯了您的权益,请告知。看到您的告知后,我将及时作出处理。
0 0
原创粉丝点击