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)
*/