小池啓仁 ヒロヒト応援ブログ By はてな

小池啓仁(コイケヒロヒト)の動画など。

小池啓仁 ヒロヒト応援ブログ By はてな

openエラー取得について

open は、ファイルが開けなかった場合に未定義値(偽)を返すので、それを否定(!)し、真にしてエラー取得を行います。

オーソドックス

if(!open FH, ">ABC.txt") {
   die "open error $!";
}

上記を下記のように記述することもできます。
「or」と「||」は、open 関数を評価してファイルを開く(真)ことができれば、die関数を評価せずに次の行に処理を移します。
「or」と「||」の違いは、評価の優先順位が「or」は「||」に比べて低いのです。

スマート

open(FH, ">ABC.txt") or die "open error $!";
または
open FH, ">ABC.txt"  or die "open error $!";
または
open(FH, ">ABC.txt") || die "open error $!";

しかし、上記を下記にするとエラーが取得できないのです。

バグ

open FH, ">ABC.txt"  || die "open error $!";

たぶん、「||」の優先順の関係だと思うんですが(よくわかりません)・・・結構、はまります。


kitsさんから教えていただきました。いつもありがとうございます。

open FH, (”>ABC.txt” || die ”open error $!”);

( )内は、”>ABC.txt” が真なので || 以降は評価されず、”>ABC.txt”という値が返ります。
そのため結果的に

open FH, ”>ABC.txt”;

と同じことになります。

スパムブログ

スパムメール、スパムコメント、スパムトラックバックは、知っていましたが、スパムブログがあるのは、知りませんでした。
そういえば、私の文章が変な形で引用しているブログがあったり、今思うとこれが、スパムブログだったのかもしれません。

ブログの4割はスパムを発表したニフティに聞くスパムブログの実態

贅沢な昼寝

昨晩は教会の宿直だったので、5時に起床して、いろいろとお役をこなし、7時半に家に帰って来ました。
そして、今日のメイン記事「openエラー取得について」をまとめたり、「Perlノート」の3月分をホームページに反映したりしました。
昼食後、宿直で寝不足のこともあり、17時頃まで贅沢な昼寝をさせていただきました。神さま仏さまへ感謝。忘れてたママへも感謝!

固定電話はもちろん、携帯電話もなくなる?

IP電話はネットワーク内なら無料です。会社も固定電話からIP電話に置き換えられました。
実は、IP電話は携帯電話も駆逐する潜在能力があるのです。

通話網を脅かすSkypeの仕組み、分かりやすく解剖!


つまり、携帯IP電話が実用化されれば、世界中どこにかけても、通話料がタダの時代がすぐそこまできているのです。たぶん。