好奇怪的打印(print)问题

好奇怪的打印(print)问题

刚刚学习perl,有这样一个程序

use m_a;
use m_b;

.....
&sub_d();
.....

sub sub_c
{
...
}

sub sub_d
{
...
sub_c
...
}

....


问题是这样的:
为了看看这个程序怎么运行的,我在调用&sub_d前面添加了打印语句 print1;在 sub_c里面添加了打印语句print2, 在sub_d里添加了打印语句print3和print4.
即程序变成如下形式:

use m_a;
use m_b;

.....
print1;
&sub_d();
.....

sub sub_c
{
...
print2;
...
}

sub sub_d
{
...
sub_c;
print3;
...
print4;
...
}

....


执行结果如下:
print2;
print4;
print1

很是怪异啊,这是怎么回事?
&sub_d();   #这种写法也很怪异


QUOTE:
原帖由 hitsubunnu 于 2008-4-4 12:21 发表
&sub_d();   #这种写法也很怪异

sub_d表示一个子程序,&sun_d表示调用该子程序

我并没有原程序照抄,只是大概意思。


QUOTE:
原帖由 hitsubunnu 于 2008-4-4 12:21 发表
&sub_d();   #这种写法也很怪异

为啥怪异?

PS. 你收到Scripting Games 2008的奖品没?
关注,有时间试试
我这没问题啊,都是按秩序打印出来的