Perl は型指定が弱い言語であるため、変数を型指定する必要はありません。Perl インタプリタはコンテキストに基づいて一致する型を自動的に選択します。
Perl には、スカラー、配列、ハッシュという 3 つの基本的なデータ型があります。以下に、これら 3 つのデータ型について説明します。
シリアルナンバー | 種類と説明 |
---|---|
1 | スカラー スカラーは Perl の最も単純なデータ型です。このデータ型の変数には数値、文字列、浮動小数点数を使用できますが、厳密な区別はありません。使用する場合は、変数名の前に「$」を追加して、スカラーであることを示します。例えば: $myfirst=123; #数値 123 $mysecond="123"; |
2 | 配列 配列変数は文字「@」で始まり、インデックスは 0 から始まります (例: @arr=(1,2,3)) @arr=(1,2,3) |
3 | ハッシュ ハッシュは、キーと値のペアの順序付けされていないコレクションです。キーを添え字として使用して値を取得できます。ハッシュ変数は文字「%」で始まります。 %h=('a'=>1,'b'=>2); |
PERL は実際には整数をコンピュータの浮動小数点レジスタに格納するため、実際には浮動小数点数として扱われます。
ほとんどのコンピュータでは、浮動小数点レジスタには約 16 桁を格納でき、これより長い数値は破棄されます。整数は実際には浮動小数点数の特殊なケースです。
整数変数と演算:
$x = 12345;if (1217 + 116 == 1333) { # コードステートメントブロックを実行}
8 進数と 16 進数: 8 進数は 0 で始まり、16 進数は 0x で始まります。例えば:
$var1 = 047; # 10 進数で 39 に等しい $var2 = 0x1f; # 10 進数で 31 に等しい
浮動小数点データ: 11.4、-0.3、.3、3.、54.1e+02、5.41e03。
通常、浮動小数点レジスタは浮動小数点数を正確に格納できないため、演算と比較には特別な注意を払う必要があります。通常、インデックスの範囲は -309 から +308 です。
上記のプログラムを実行すると、出力結果は次のようになります。
最初の値は 0 2 番目の値は 0.01
Perl の文字列はスカラーで表され、その定義方法は C の文字列と非常によく似ています。ただし、Perl の文字列は 0 で終わりません。
Perl の二重引用符と一重引用符の違い: 二重引用符は一部のエスケープ文字と変数を正常に解析できますが、一重引用符は解析できず、そのまま出力されます。
ただし、次のように一重引用符で定義すると、複数行のテキストを使用できます。
#!/usr/bin/perl $var='これは複数行の文字列テキストの使用例です';print($var);
上記のプログラムを実行すると、出力結果は次のようになります。
以下は複数行の文字列リテラルを使用した例です。
Perl 言語で一般的に使用されるエスケープ文字の一部を次の表に示します。
エスケープ文字 | 意味 |
---|---|
\ | バックスラッシュ |
' | 一重引用符 |
「 | 二重引用符 |
a | システムリング |
b | バックスペース |
f | フォームフィード |
n | 改行 |
r | 入力 |
t | 水平タブ |
v | 垂直タブ |