C#の基本を解説:変数・データ型・演算子の使い方
C#における変数とは
変数(Variable)とは、プログラムが操作できるように名前を付けた記憶領域のことです。C#では、すべての変数に特定の「型」が割り当てられています。この型によって、以下の3つの要素が決まります。
- 変数のメモリ上でのサイズとレイアウト
- そのメモリに格納できる値の範囲
- 変数に対して実行できる操作の種類
つまり、変数を使う前にその型を正しく理解することは、安全で効率的なプログラムを書くための第一歩と言えます。
C#のデータ型の分類
C#の変数は、大きく以下の3種類に分類されます。
- 値型(Value Type)
- 参照型(Reference Type)
- ポインタ型(Pointer Type)
値型(Value Type)
値型の変数には、データそのものを直接代入できます。代表的な例として int や double、bool などがあります。これらはすべて System.ValueType クラスから派生しています。値型の変数を別の変数に代入すると、実際の値がコピーされるという特徴があります。
参照型(Reference Type)
参照型の変数は、実際のデータそのものではなく、データが格納されているメモリ上の場所への参照(リファレンス)を保持します。
複数の変数が同じメモリ位置を参照することも可能です。この場合、いずれか1つの変数を通じてメモリ内のデータを変更すると、他の変数から見た値にも自動的にその変更が反映されます。
C#に組み込まれている参照型の代表例は次のとおりです。
- object:すべての型の基底となる汎用型
- dynamic:実行時に型が決定される動的型
- string:文字列を扱う型
ポインタ型(Pointer Type)
ポインタ型の変数は、別の型のデータが格納されているメモリアドレスを保持します。ポインタは主に unsafe コンテキストで使用され、高度なメモリ操作が必要な場面で活用されます。
C#における演算子とは
演算子(Operator)とは、コンパイラに対して特定の数学的処理や論理的な操作を実行するよう指示するための記号です。
C#でよく使われる主な演算子は以下のとおりです。
- 算術演算子:加算(+)、減算(-)、乗算(*)、除算(/)など数値計算を行う
- 関係演算子:等しい(==)、より大きい(>)など2つの値を比較する
- 論理演算子:AND(&&)、OR(||)など条件式を組み合わせる
- ビット演算子:ビット単位での AND、OR、シフトなどの操作を行う
- 代入演算子:=、+=、-= など変数に値を代入・更新する
これらの演算子を適切に使い分けることで、条件分岐や繰り返し処理など、プログラムのロジックを柔軟に構築することができます。
-
Pythonの演算子の種類をわかりやすく解説!7つの基本カテゴリ一覧
Pythonの演算子とは?演算子(Operator)とは、オペランド(被演算子)の値を操作・処理するための記号やキーワードのことです。例として「4 + 5 = 9」という式を見てみましょう。この場合、4と5が「オペランド(被演算子)」と呼ばれ、+が「演算子」と呼ばれます。Python言語では、目的に応じて複数の種類の演算子が用意されており、これらを使いこなすことが効率的なプログラミングの第一歩となります。Pythonでサポートされている7種類の演算子Pythonでは、主に以下の7種類の演算子がサポートされています。1. 算術演算子(Arithmetic Operators)足し算(+)、引き算
-
Pythonにインクリメント・デクリメント演算子はない?代わりの書き方を徹底解説
この記事では、Pythonにおけるインクリメント(増加)とデクリメント(減少)の実装方法について詳しく解説します。Pythonには「++」「--」演算子が存在しないC言語やJava、JavaScriptなどの多くのプログラミング言語には、値を1だけ増減させるための前置・後置インクリメント演算子(++)やデクリメント演算子(--)が用意されています。しかし、Pythonにはこれらの演算子は存在しません。これは「明示的であることが暗黙的であるよりも良い(Explicit is better than implicit)」というPythonの設計思想によるもので、コードの可読性を重視するためです。と