Top > .NET & Control > C# sizeof演算子

sizeof演算子

sizeof 演算子が使用できるのは値型のみ(参照型には使用できません)。
sizeof 演算子はオーバーロードできません。
sizeof 演算子により返される値の型は int

定義済みの型のサイズを表す定数値一覧

結果
sizeof(sbyte) 1
sizeof(byte) 1
sizeof(short) 2
sizeof(ushort) 2
sizeof(int) 4
sizeof(uint) 4
sizeof(long) 8
sizeof(ulong) 8
sizeof(char) 2(Unicode)
sizeof(float) 4
sizeof(double) 8
sizeof(bool) 1

上記以外(struct などその他のすべての型)については、アンセーフ コード ブロックでのみ使用可能です。SizeOf メソッドを使用できますが、このメソッドで返される値が、sizeof メソッドで返される値と同じでないことがあります。Marshal.SizeOf は値のマーシャリング後にサイズを返します。一方、sizeof は、共通言語ランタイムによる割り当ての後に埋め込みを含めたサイズを返します。

使用例

// cs_operator_sizeof.cs
// compile with: /unsafe
using System;
class MainClass
{
    unsafe static void Main()
    {
        Console.WriteLine("short Size {0}.", sizeof(short));
        Console.WriteLine("int Size {0}.", sizeof(int));
        Console.WriteLine("long Size {0}.", sizeof(long));
    }
}

▲ページトップに戻る