📒

C#基本まとめ~変数編~

2022/12/11に公開

今後の記事を書く前に初歩の初歩、C#の基本的な情報をまとめていこうと思います。
まずは変数あたりから。

基本的な変数

変数の種類

【整数型】

サイズ 規定値 リテラルの型文字 識別子の型文字 格納可能な範囲
sbyte 1Byte 0 なし なし -128 ~ 127
byte 1Byte 0 なし なし 0 ~ 255
short 2Byte 0 なし なし -32,768 ~ 32,767
ushort 2Byte 0 なし なし 0 ~ 65,535
int 4Byte 0 なし % -2,147,483,648 ~ 2,147,483,647
uint 4Byte 0 U なし 0 ~ 4,294,967,295
long 8Byte 0 L & -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807
ulong 8Byte 0 UL なし 0 ~ 18,446,744,073,709,551,615

【浮動小数型】

サイズ 規定値 リテラルの型文字 識別子の型文字 格納可能な範囲
float 4Byte 0 F ! ±3.40282347E+38
double 8Byte 0 D # ±1.7976931348623157E+308

【10進型】

サイズ 規定値 リテラルの型文字 識別子の型文字 格納可能な範囲
decimal 16Byte 0 M @ ±79,228,162,514,264,337,593,543,950,335
※少数部28桁まで格納可能。その場合、整数部が小数部の桁数分少なくなる
⇒最大少数桁時の範囲:±7.9228162514264337593543950335

【論理型】

サイズ 規定値 リテラルの型文字 識別子の型文字 格納可能な範囲
bool - False なし なし True/False

【日付型】

サイズ 規定値 リテラルの型文字 識別子の型文字 格納可能な範囲
DateTime 8Byte 0001/01/01 00:00:00 なし なし 0001/01/01 00:00:00 ~ 9999/12/31 23:59:59

【文字・文字列型】

サイズ 規定値 リテラルの型文字 識別子の型文字 格納可能な範囲
char 2Byte 0 C なし 0 ~ 65535
string - "" なし なし 0 ~ 約20億文字(Unicode)

###【オブジェクト型】

サイズ 規定値 リテラルの型文字 識別子の型文字 格納可能な範囲
object 8Byte Nothing なし なし すべての型を格納可能

リテラルの型文字

var L = 1L;     // long
var UL = 1UL;   // ulong

var F = 1.0F;   // float
var D = 1.0D;   // double
var M = 1M;     // decimal

既定のリテラル型

var I = 2147483647; // integer
var L = 2147483648; // long

var C = ' ';       // char
var S = " ";       // string

var D = 1.1;       // double

10進数以外のリテラル

基数 プレフィクス 有効文字
2進数 0b 0,1
8進数 なし なし
16進数 0x 0~9,A~F
var B = 0b1001;             // 2進数
var X = 0h123456789ABCDEF;  / 16進数

// リテラル識別子(※整数型のみ)との組み合わせも可能
var XL = 0xFFFFL;    // long
var XUL = 0xFFFFUL;  // ulong

// 「_」で区切る事も可能
var XU = 0xFFFF_FFFF;

型変換

型変換1:キャスト

型変換するものの前に(Type)を付ける

var str = "123";
var num = (int)str;   // 文字列をintに変換

型変換2:数値を文字列に変換

変数.ToString() メソッドを使用

型変換3:Parse系メソッドを使用した変換

型.Parse()等

var S = "12345";
var I1 = int.Parse(S);   // Sがnull・変換できない値の場合例外発生
int I2;
int.TryParse(S, out I2); // Sが変換できない値でも例外は発生しない

Discussion