print语句中的reverse的问题。

print语句中的reverse的问题。

$a="abcd";
print reverse $a;


这个是标量上下文吧,为什么输出的还是"abcd",而不是"dcba"呢?


QUOTE:
原帖由 anlrj 于 2009-1-13 12:54 发表
$a="abcd";
print reverse $a;

这个是标量上下文吧,为什么输出的还是"abcd",而不是"dcba"呢?

print不是标量环境
http://bbs.chinaunix.net/viewthr ... p;page=1#pid9892942
还是不懂 汗 我也出现这个问题 新手求教 。。。
注意reverse 返回逆转的列表,它不会改变其参数的值。如果返回值没有赋值给某个变量,那这个操作是没有什么意义的:

哦 明白了 应该是上面这句的原因把 呵呵脑子混掉了~

回复 1# 的帖子

reverse 翻转的列表,而不是标量的内容
#!/bin/perl -w
$a="abcd";
print "the \$a is a\n";
$b=reverse($a);
print "the \$b is b\n";

回复 7# ydlke 的帖子