• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:perlのデータクリアーがうまく動きません。 )

perlのデータクリアーがうまく動かない

このQ&Aのポイント
  • perlのデータクリアーがうまく動かないです。データが残ったままでプログラムが処理されてしまいます。
  • 以下のプログラムで動作するようにと思っていたのですがうまく動きません。
  • データの格納処理の最終結果として、期待していた結果が得られません。

質問者が選んだベストアンサー

  • ベストアンサー
  • kmee
  • ベストアンサー率55% (1857/3366)
回答No.1

この > my $xlipr = ""; は、この位置で、このブロック内のみで有効な新しい$xliprが作られます。それまでに同じ名前の変数があっても、それとは、無関係です。 このプログラムの場合、my を使わなければ、次と等価です。(xlipr2は他で使っていないとして) $xlipr2 = ""; $xliprが初期化されていないのが一目瞭然です。 myを書かずに、 $xlipr = ""; とするのが、このプログラムでは正解です。 myは新しい変数を用意する、という意味では「変数の初期化」ですが、「既存の変数の値を初期化する」という機能ではありません。

hihin2003
質問者

お礼

kmeeさん 回答ありがとうございます!! myを書かないで処理しましたらバッチリ動きました。 >myは新しい変数を用意する、という意味では「変数の初期化」ですが、「既存の変数の値を初期化する」>という機能ではありません。 そうなんですね。勉強になります。 ありがとうございます。 本当に助かりました。