How to get the number of bytes of a variable in C#

1 Answer

0 votes
using System;

public class Program
{
    public static void Main(string[] args)
    {
        static void DisplaySizeOf<T>(int n) =>
                    Console.WriteLine($"{typeof(T)} is {n} byte(s)");

        Console.WriteLine("C# types:");
        DisplaySizeOf<byte>(sizeof(byte));
        DisplaySizeOf<char>(sizeof(char));
        DisplaySizeOf<bool>(sizeof(bool));
        DisplaySizeOf<short>(sizeof(short)); // Int16
        DisplaySizeOf<ushort>(sizeof(ushort)); // UInt16
        DisplaySizeOf<int>(sizeof(int)); // Int32
        DisplaySizeOf<uint>(sizeof(uint)); // UInt32
        DisplaySizeOf<long>(sizeof(long)); // Int64
        DisplaySizeOf<ulong>(sizeof(ulong)); // UInt64
        DisplaySizeOf<float>(sizeof(float)); // Single
        DisplaySizeOf<double>(sizeof(double));
        DisplaySizeOf<decimal>(sizeof(decimal));
    }
}


/*
run:

C# types:
System.Byte is 1 byte(s)
System.Char is 2 byte(s)
System.Boolean is 1 byte(s)
System.Int16 is 2 byte(s)
System.UInt16 is 2 byte(s)
System.Int32 is 4 byte(s)
System.UInt32 is 4 byte(s)
System.Int64 is 8 byte(s)
System.UInt64 is 8 byte(s)
System.Single is 4 byte(s)
System.Double is 8 byte(s)
System.Decimal is 16 byte(s)

*/

 



answered Jun 4, 2025 by avibootz

Related questions

1 answer 173 views
1 answer 179 views
1 answer 274 views
1 answer 202 views
1 answer 252 views
...