有一些小的tips,这次拿value swap提一下。
以往在C语言中,如果要交换两个变量的值,基本上会借助一个中间变量,先把其中一个值保存在中间变量中,然后再进行赋值:
e.g.初始值:a = 5, b = 6;
c = a; a = b; b = c;
借助C先存储a的原始值,再把b赋给a,之后把c中保存的a的原值赋给b。
这个问题如果用perl解决就比较简单,利用列表上下文;
e.g.初始值同上。
只需要一个表达式完成value swap:
($a, $b) = ($b, $a);
print "$a,$b";
结果得到:6,5;
这样的方法,应该是perl内部机制的问题,perl脚本语言中有趣的现象还是比较多的。