代入演算子

代入演算子は演算子の左辺に対して右辺の値を代入する場合に使用される演算子です。単純に値を代入するだけではなく、何らかの計算を行った結果を代入することもできます。ここでは Perl における代入演算子の使い方について解説します。

(Last modified: )

代入演算子の使い方

代入演算子は演算子の左辺に対して右辺の値を代入する場合に使用される演算子です。いくつかの種類がありますが、代表的なものとしては今までも使ってきた = 演算子です。 = 演算子では右辺の値を左辺に代入します。

次の例を見てください。

my $num;

$num = 10;

演算子 の右辺に記述された数値の 10 を左辺に記述された変数 $var に代入します。

代入演算子には = 以外に他の算術演算子と組み合わせた演算子が用意されています。

演算子記述例意味
+=a += ba = a + b
-=a -= ba = a - b
*=a *= ba = a * b
/=a /= ba = a / b
%=a %= ba = a % b
**=a **= ba = a ** b
&=a &= ba = a & b
^=a ^= ba = a ^ b
|=a |= ba = a | b
<<=a <<= ba = a << b
>>=a >>= ba = a >> b

ある変数に対する演算の結果を同じ変数に再度格納する場合に使用できます。例えば次のように使います。

my $num;

$num = 10;
$num += 5;

+= 演算子は左辺の変数に格納されている値に右辺の値を加算し、その結果を改めて左辺の変数に格納します。

上記は次のように記述した場合と同じです。

my $num;

$num = 10;
$num = $num + 5;

他の演算子の場合も同様です。ある変数に対して何らかの演算を行った後で、同じ変数に格納し直す場合の簡易的な記述方法と考えて下さい。

また次のような演算子も用意されています。

演算子記述例意味
&&=a &&= b左辺がTrueの場合に右辺の値を左辺に代入
||=a ||= b左辺がFalseの場合に右辺の値を左辺に代入
.=a .= ba = a.b

&&= 演算子や ||= については別のページで確認します。 .= は右辺に書かれた文字列を左辺の文字列の最後に追加する場合の簡易的な記述方法です。

サンプルコード

それでは簡単なサンプルを作成します。

use strict;
use warnings;
use utf8;
binmode STDIN, ':encoding(cp932)';
binmode STDOUT, ':encoding(cp932)';
binmode STDERR, ':encoding(cp932)';

my $num;

$num = 9;
$num += 5;

print "変数 = $num\n";

$num /= 2;
print "変数 = $num\n";

テキストエディタでプログラムを記述したあと sample.pl という名前で保存します。(文字コードは UTF-8 です)。コマンドプロンプトを起動し、プログラムを保存したディレクトリへ移動したあとで次のように実行します。

perl sample.pl

次のように実行結果が表示されます。

代入演算子(1)

変数に格納した値に対して代入演算子を使って演算を行ったあと、結果を画面に表示しました。

-- --

Perl における代入演算子の使い方について解説しました。

( Written by Tatsuo Ikura )

Profile
profile_img

著者 / TATSUO IKURA

プログラミングや開発環境構築の解説サイトを運営しています。