Hatena::Grouparaistudy

iwasekiの日記

2006-08-19

[]2章 スカラーデータ(その1) はてなブックマーク - 2章 スカラーデータ(その1) - iwasekiの日記

スカラーデータとは

スカラーデータってなんざんしょ。

Perlが取り扱う最も段純な種類のデータです

だそうな。

整数

ここら辺は基本なんで、長いけどポイントをまとめて。

  • 10の何乗かを表すE記法を使える
    • 例:7.25e45 → 7.25×10の45乗
  • 桁が多い数値を"_"をはさんで読みやすくすることができる("_"は無視される)
    • 例:1234567890 → 123_456_789_0
  • 0で始まる数値は8進数、0xで始まる数値は16進数、0bで始まる数値は2進数として扱われる。
  • 加算、減算、乗算、除算はそれぞれ、"+"、"-"、"*"、"/"を使う
  • 剰余算*1(余りを求める)が使える
    • 例:「10 % 3」の値は1になる
  • べき乗算*2(数値の何乗ってやつ)が使える
    • 例:「2**3」の値は、2の3乗ってことで8になる

文字列

シングルクォーテーションかダブルクォーテーションを使えばいいようだ。

・・・すでにHello,World!の時に使ってるけどね。

ダブルだとエスケープシーケンスと変数展開ってのが使えるらしい。エスケープシーケンスってのは"\n"とかのこと。

文字列演算子
文字列繰り返し演算子
  • "x"(小文字)で文字列を繰り返す
    • 例:"Hello" x 3 → "HelloHelloHello"
    • 例:5 x 4 → "5555"
数値と文字列の自動変換

スカラー値に対する演算子で自動的に判定する。*3

あ、すごい便利かも、と思わせてくれた例をいくつか。

    • 例:"12" * "3" → "36"*4
    • 例:"12world34" * " 3" → "36"*5
    • 例:"Z" . 5 * 7 → "Z35"*6

Perlからの警告メッセージ(-w)

実行するときに引数を指定してやることで、文字を数値として扱ってるような場合に警告を出してくれるんだそうな。

前述の数値と文字列の自動変換の例みたいなふざけたヤツを警告してくれるんだろう。

実行するごとに警告を有効にするには

>perl -w hello.pl

としてやる。

プログラムに対していつでも有効にしておくには、1行目の例のところに引数を書いておく。

#!/usr/bin/perl -w

構文チェック(-cx

本には載ってなかったけど、;の付け忘れのようなミスをチェックしてくれるようだ。

perl -cx hello.pl

*1:って書き方でいいのか?

*2:って書き方でいいのか?その2

*3:文字列繰り返し演算子の2つ目の例みたいにね

*4:ちゃんと数値で判断してる

*5:余計なところを無視してる

*6Perlちゃんて頭いいのね