手机
当前位置:查字典教程网 >编程开发 >C#教程 >c#栈变化规则图解示例(栈的生长与消亡)
c#栈变化规则图解示例(栈的生长与消亡)
摘要:栈的变化规则:1、方法调用会导致栈的生长,具体包括两个步骤:一、插入方法返回地址(下图中的Fn:);二、将实际参数按值(可以使用ref或ou...

栈的变化规则:

1、方法调用会导致栈的生长,具体包括两个步骤:一、插入方法返回地址(下图中的Fn:);二、将实际参数按值(可以使用ref或out修饰)拷贝并插入到栈中(可以使用虚参数访问)。

2、遇到局部变量定义会向栈中插入局部变量。

3、遇到return语句会导致栈消亡,一直消亡到方法返回地址,并把return的返回值设置到方法返回地址中。

4、这里先不考虑中括号导致的栈的消亡。

c#栈变化规则图解示例(栈的生长与消亡)1

复制代码 代码如下:

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

namespace StackAndHeapStudy

{

unsafe class Program

{

static void Main(string[] args)

{

var test = new TestClass();

SetX(test);

Console.WriteLine(*test.X);

Console.WriteLine(*test.X);

}

private static void SetX(TestClass test)

{

var X = 10;

test.X = &X;

}

}

unsafe class TestClass

{

public int* X;

}

}

【c#栈变化规则图解示例(栈的生长与消亡)】相关文章:

C#获取进程和对进程的操作

c#实现隐藏与显示任务栏的方法详解

c#文件的复制,移动,创建(实例代码)

C# 对文件与文件夹的操作包括删除、移动与复制

c# 控件截图的简单实例

C#将dll打包到程序中的具体实现

C#灰度化图像的实例代码

Repeater控件绑定的三种方式

C#程序最小化到托盘图标操作步骤与实现代码

C#中接口(interface)的理解

精品推荐
分类导航