首页 > 学院 > 开发设计 > 正文

C#中sizeof的用法

2019-11-17 01:45:49
字体:
来源:转载
供稿:网友

C#中sizeof的用法

在C#中,sizeof用来计算类型的大小,单位是字节。有这样的一个类:

    public class MyUglyClass
    {
        public char myChar1;
        public int myInt;
        public char myChar2;
    }

在客户端,试图使用sizeof计算该类型的大小。

    class PRogram
    {
        static void Main(string[] args)
        {
            MyUglyClass m = new MyUglyClass();
            m.myChar1 = 'd';
            m.myInt = 25;
            m.myChar2 = 'a';
            Console.WriteLine(sizeof(MyUglyClass));
        }
    }

运行,报错:12

○ 第一个报错说明要使用sizeof,必须使用关键字unsafe○ 第二个报错说明sizeof对运行时变量无效,只能针对编译器变量统计其大小

把类改成struct值类型。

    public struct MyUglyClass
    {
        public char myChar1;
        public int myInt;
        public char myChar2;
    }

客户端改成如下:

    class Program
    {
        static void Main(string[] args)
        {
            MyUglyClass m = new MyUglyClass();
            m.myChar1 = 'd';
            m.myInt = 25;
            m.myChar2 = 'a';
            unsafe
            {
                Console.WriteLine(sizeof(MyUglyClass));
            }
            
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表