[原创]琢磨一种察看/修改C#堆中东西的方法(随笔)

来源:互联网 发布:隔音通风器 知乎 编辑:程序博客网 时间:2024/05/21 09:43

非正式的、不完善的、写着玩的、可能会引起.Net退出的方法:

namespace cscon
{
    
class root
    
{
        
public int i;
        
public int j;

        
/*public virtual int nuller(int a,int b)
        {
            return a + b;
        }
*/

    }


    
class Program
    
{
        
static void Main(string[] args)
        
{
            
unsafe
            
{
                root rt 
= new root();
                rt.i 
= 999;
                rt.j 
= 888;
                
fixed (int* i = &rt.i)
                
{
                    
byte* b = (byte*)i;
                    b 
+= 4;
                    
int* j = (int*)b;
                    Console.WriteLine(
"rt.i:{0},rt.j:{1}", rt.i, rt.j);

                    Console.WriteLine(
"i:addr|{0:x}:{1}", (uint)i, *i);
                    Console.WriteLine(
"i:addr|{0:x}:{1}", (uint)j, *j);
                    (
*j) = 5555;
                    Console.WriteLine(
"i:addr|{0:x}:{1}", (uint)j, *j);
                    Console.WriteLine(
"rt.i:{0},rt.j:{1}", rt.i, rt.j);

                }

            }

            Console.Read();
        }

    }

}

 

原创粉丝点击