.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)); } }