演算子

「演算子」の編集履歴(バックアップ)一覧はこちら

演算子」(2007/12/20 (木) 01:28:27) の最新版変更点

追加された行は緑色になります。

削除された行は赤色になります。

*演算子 **演算子とは 演算子(operator)とは、値を操作するための命令です。 例えば、二つの値を足し算したい時は、加算のための演算子「+」を使います。 int i = 1 + 2 + 3; これで i には 6 が代入されます。 勿論引き算もあります。 double d = 3.0 - 1.5; これで d には 1.5 が代入されます。 掛け算、割り算も当然あります。 int x = 3 * 5; int y = 2 / 4; 割り算に関しては、気をつけなければいけないことがあります。 int 型同士の値の割り算は、あまりが切り捨てられます。上の場合、 y には 0 が代入されます。 これを回避するためには、下のようにする必要があります。 int y = 2.0 / 4.0; しかしこれではまだダメです。y は int 型のため、代入される際に 0.5 は 0 へと暗黙の変換が行われます。 本当にやりたかったのは、 double y = 2.0 / 4.0; これですね。 C言語では、あまりを求めるための演算子も用意されています。 int i = 5 % 2; i には 1 が代入されます。 **演算子の省略 例えば、ある変数の値を 1 加算したいとします。普通に書けば。 int i = 0; i = i + 1; となるでしょう。 こういった自分に何らかの演算を行った物を自分に代入する、といった場面はよくあります。 そういった場合のために、C言語では下のような書き方が用意されています。 (operator)= (operator) の部分には、例えば「+」や「-」が入ります。 これを使うと一つ前の例は、 i += 1; と書くことが出来ます。 **インクリメント、デクリメント 演算子の省略の項で話したような、値を一つ加算する、または減算するといった処理は非常によく発生します。 そのために、インクリメント演算子、デクリメント演算子と呼ばれるものが存在します。 i++; i--; 「i++」は「i に 1 加算する」、「i--」は「i に 1 減算する」という意味になります。 この二つの演算子には、前置形式、後置形式の二つの形式があります。 どういうことかというと、下のような書き方が出来るという意味です。 i++; ++i; 少しややこしいので、下の二文を気を引き締めて読んでください。 +前者は「i に 1 加算するけど、加算前の i の値を返すよ」 +後者は「i に 1 加算して、その値を返すよ」 実際に例を見る方が早いですね。下のコードを見て下さい。 int i = 3; int x = i++; int y = ++i; x y には、それぞれどんな値が入るでしょう?答えは x が 3、 y が 5 です。 **比較演算子 どちらの値が大きいか、二つの値は等しいか、こういったことが知りたい時は比較演算子を使います。 3 < 4 2 <= 5 4 > 2 4 >= 4 3 == 0 数学と基本的には同じですが「=」は既に代入として使われています。 そのため、等しいかどうか知りたい場合は「==」と書く必要があります。 比較結果が正しい場合、演算子は演算結果として「1」を、正しくなかった場合は「0」を返します。 つまり、C言語では「1」は正しいという意味を「0」は正しくないという意味を持つということになります。 (これについては他の項で詳細に書く) **演算子詳細 書くのだるい。のでどんな演算子があるかもっと知りたい人は適当にぐぐって。 基本的には四則演算、比較演算、論理演算知っていれば問題ない。はず。

表示オプション

横に並べて表示:
変化行の前後のみ表示: