Perl日記

日々の知ったことのメモなどです。Perlは最近やってないです。

引数に同じ変数でインクリメントしたのとしてないのとを入れたときの値

気になったのでやってみた。

#!/usr/local/bin/perl
use strict;
use warnings;
use 5.010;

my $i = 1;

sub say_arg { say "@_" }

say_arg($i, ++$i, $i);
say "--------------";
say "\$i => $i";
say "--------------";
say_arg($i, $i++, $i);

__END__

結果。

2 2 2
--------------
$i => 2
--------------
3 2 3


プリインクリメント・ポストインクリメントに関わらず、どちらかが一個でもあると、それが最優先で効いてるみたい。