&test( [ X ] , [ Y ]);
X:配列またはスカラー
Y:スカラー
のような形でサブルーチンに渡し、Xが配列であってもスカラーであっても新しい配列にpushしたいのですが、どうしてよいのか分かりません。
具体的には
$a = 100;
@b = qw/1 2 3 4 5/;
$c = 500;
のとき、
&test($a, $c);なら @array = qw/100/; $scalar = 500;
&test(@b, $c);なら @array = qw/1 2 3 4 5/; $scalar = 500;
のようにしたいのです。
なお、&test($a, @b, $c);のように引数を三つにして送る方法は仲間に却下されてしまいました。
なるべく引数は二つの方向でお願いいたします。
No.1ベストアンサー
- 回答日時:
一般論なら X をリファレンスにするんでしょうね.
この場合だけならサブルーチン中で @_ を pop すればいいんですが.
sub test {
$scalar = pop;
@array = @_;
}
で動いたりして.
レスが遅くなりましたがおっしゃるやり方で動作確認いたしました。
リファレンスか型グロブか、とずっと悩んでいましたがなるほど後ろからスカラーを抜いてくれば良かっただけなんですね。
切羽詰まっていたので非常に助かりました。
本当にありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP $_SESSIONについて教えて下さい。 2 2023/03/02 09:18
- Perl perlで2次元配列をサブルーチンに値渡しで渡す 5 2022/12/17 18:49
- C言語・C++・C# c言語 配列とポインタについて 3 2023/02/09 22:53
- Perl perl このテキストファイルを簡単に配列に入れるには? 2 2022/04/27 20:24
- C言語・C++・C# C言語初心者 ポインタについて、お助けください、、 2 2023/03/15 23:50
- 数学 ベクトル解析の勾配の問題について 6 2022/04/30 15:31
- PHP 配列の値の更新方法について 1 2022/08/05 09:49
- C言語・C++・C# c言語の問題です 課題1 (二分探索木とセット) 大きさ size の配列 array を考える。す 2 2023/01/10 21:08
- Visual Basic(VBA) VBA ユーザーフォームからSubプロージャ―に値を引き渡す方法 3 2023/04/09 01:54
- 数学 フィッシャーの線形判別関数 1 2022/10/15 12:51
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Perl の外部モジュールの利用方法
-
ファイルアイコンの左下に緑の□...
-
perlのプログラミング 部分入れ...
-
ペプシコーラとコカ・コーラとD...
-
アルファベットに付いて質問し...
-
#!/usr/bin/perlで書きだしたCG...
-
Perlのエラーについてご教授く...
-
perlのflock関数でロックをかけ...
-
AI sisterとは、偽物の人ですか?
-
perlプログラミング 空白行削除
-
perlでリテラル値はメモリにど...
-
perlで2次元配列をサブルーチ...
-
perlのrequireの動き方について...
-
perlの構文でカンマの意味が分...
-
perlについての質問
-
Blenderについて
-
perl このテキストファイルを簡...
-
Perlでファイルの末尾から指定...
-
秀丸での一括変換について
-
英数文字列のうちの数値を4桁に...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Can't use string ("0") as an ...
-
行指向処理でデータの読み込み...
-
サンプルの意味
-
画面を強制的に再描画させる方法
-
VBAで3秒だけ時間を止めたい
-
VBAでの一時停止と再開の方法
-
VBのReturnの使い方
-
どなたかこのプログラミングを...
-
Escキーを押すと、中断する時と...
-
UWSCの終了の仕方
-
エクセルの当番表を作っていま...
-
VBA for i=1 to lastrow
-
「偶数・奇数の和」のフローチ...
-
VBAのautofilter、criteriaの配...
-
アクティブセルから、A列最終行...
-
DoEventsが必要な理由について
-
vb.netからエクセル関数書き込み
-
GIFアニメをループさせたくない
-
DOSコマンドのループ内のTIMEコ...
-
ハッシュ検索はなぜ速い
おすすめ情報