&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ランキング
-
Can't use string ("0") as an ...
-
サンプルの意味
-
アクティブセルから、A列最終行...
-
画面を強制的に再描画させる方法
-
どなたかこのプログラミングを...
-
ハッシュ検索はなぜ速い
-
乱数の桁数指定、または範囲指定。
-
アセンブラによるウェイト(WAIT...
-
VBのReturnの使い方
-
VBA for i=1 to lastrow
-
VBAでの一時停止と再開の方法
-
一意(ユニーク)かつ、ソート...
-
Dim flag(4) as boolean で配列...
-
Excel VBA ユーザーフォームの...
-
alarmの使用について
-
For文を使った九九表の作成
-
Perlは戻り値で、ハッシュや配...
-
「偶数・奇数の和」のフローチ...
-
UWSCの終了の仕方
-
EXCEL VBA(初心者)印刷ルー...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Can't use string ("0") as an ...
-
PerlでCSV形式のファイルの一部...
-
perlの引数が不安定になります。
-
perlの比較、ループの使い方に...
-
レキシカル変数について
-
画面を強制的に再描画させる方法
-
VBAでの一時停止と再開の方法
-
データベースでユーザーのパス...
-
VBのReturnの使い方
-
ループ7回目の悪役令嬢は、元敵...
-
UWSCの終了の仕方
-
Escキーを押すと、中断する時と...
-
エクセルの当番表を作っていま...
-
GIFアニメをループさせたくない
-
VBAで3秒だけ時間を止めたい
-
どなたかこのプログラミングを...
-
VBA for i=1 to lastrow
-
文字列を変数名として扱う方法
-
ハッシュ検索はなぜ速い
-
DOSコマンドのループ内のTIMEコ...
おすすめ情報