C# の数値型
C# のビルトイン数値型一覧
C# で定義されているビルトインの値型の型は次の通りです。
C# 型 | .NET 型 | 接尾辞 | サイズ | 説明 |
---|---|---|---|---|
sbyte | System.SByte | 1 | 符号付きバイト | |
byte | System.Byte | 1 | 符号無しバイト | |
short | System.Int16 | 2 | 符号付き16ビット整数 | |
ushort | System.UInt16 | 2 | 符号無し16ビット整数 | |
int | System.Int32 | 4 | 符号付き32ビット整数 | |
uint | System.UInt32 | U | 4 | 符号無し32ビット整数 |
float | System.Single | F | 4 | 単精度浮動小数点 |
long | System.Int64 | L | 8 | 符号付き64ビット整数 |
ulong | System.UInt64 | UL | 8 | 符号無し64ビット整数 |
double | System.Double | D | 8 | 倍精度浮動小数点 |
decimal | System.Decimal | M | 16 | 10進数浮動小数点 |
C# のデータ型のサフィックスとは
接尾辞 (サフィックス) は数値に付けて、型を指定するために使用します。
整数値のデフォルトは int 型になりますが、次のように 100L のように接尾辞を付けると同じ 100 でも long 型として認識されます。
var m = 100L; // long
小数点の数値はデフォルトで double として認識されます。整数値に double の接尾辞の D を付けても double と認識されます。
var x = 123.0; // double
var y = 123D; // double
var z = 123; // int
C# の型の情報をプログラムで取得する
C# のビルトインの型と .NET 型は対応付けされています。次のように変数から .NET 型の名前を取得することが可能です。
またそれぞれの型で表現できる最大値や最小値は、 MaxValue や MinValue を通して取得できます。
using System;
class Program
{
static void Main(string[] args)
{
sbyte sb = 100;
var name = sb.GetType().FullName;
var size = sizeof(sbyte);
var max = sbyte.MaxValue;
var min = sbyte.MinValue;
Console.WriteLine($".NET Name : {name}");
Console.WriteLine($"Size [byte]: {size}");
Console.WriteLine($"Max value : {max}");
Console.WriteLine($"Min value : {min}");
}
}
実行結果は次のようになります。
.NET Name : System.SByte
Size [byte]: 1
Max value : 127
Min value : -128