24小时热门版块排行榜    

查看: 1251  |  回复: 4
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

mocito

铜虫 (初入文坛)

[求助] 关于perl 数组的一个小问题。

先把问题的code写一下,
$value = 2;
print ( $value, $value**3, $value++ );

结果是,
382

问题,为什么结果不是283?

刚看到数组这一部分,之前也只零零碎碎的接触到一些 c++,matlab 的基础编程,所以现在完全不知道问题可能出在哪里。。。

[ 发自手机版 http://muchong.com/3g ]
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

mocito

铜虫 (初入文坛)

引用回帖:
2楼: Originally posted by a475772910 at 2013-08-08 16:08:34
#!/usr/bin/perl
$value = 2;
$a=$value;
$b=$value**3;
$c=++$value;
print ( $a, $b,$c );
这样就好了   283  
直接写 $value, $value**3, $value++。  $value会随着$value++变化,还有就是$value++和++$ ...

谢谢~这个我试了下,确实可以。
print ( $value, $value**3, $value++ );
里面 第一位上的$value是随着第三位上的$value++变化的,而第二位的$value为什么是2的三次方呢? 我感觉第一位上和第二位上的$value 应该是等价的吧? 要不然就会产生 结果 “392” 了。
我在想是不是跟运算的层级有关,乘法先执行,然后加法,但又觉得在数组中先后顺序应该是按照它的排位先后来的……
3楼2013-08-08 16:02:48
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 5 个回答

a475772910

金虫 (正式写手)

【答案】应助回帖

★ ★ ★ ★ ★
感谢参与,应助指数 +1
mocito: 金币+5, ★★★很有帮助 2013-08-08 16:03:34
#!/usr/bin/perl
$value = 2;
$a=$value;
$b=$value**3;
$c=++$value;
print ( $a, $b,$c );
这样就好了   283  
直接写 $value, $value**3, $value++。  $value会随着$value++变化,还有就是$value++和++$value引用时是不一样的  第一个直接引用$value值,第二个引用的是+1后的值。
2楼2013-08-08 12:08:34
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

davidyjun

银虫 (初入文坛)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
mocito: 金币+15, ★★★★★最佳答案, 好像是这么回事,谢谢啦~ 2013-08-16 12:41:36
其实print也可以认为是函数或子程序,它的运算是有层级的。
4楼2013-08-16 12:08:34
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

万孝莉

新虫 (小有名气)

引用回帖:
3楼: Originally posted by mocito at 2013-08-08 16:02:48
谢谢~这个我试了下,确实可以。
print ( $value, $value**3, $value++ );
里面 第一位上的$value是随着第三位上的$value++变化的,而第二位的$value为什么是2的三次方呢? 我感觉第一位上和第二位上的$value 应该 ...

运算符在使用时是有优先级和方向性的
“++”的优先级高,结合性是左
“,”符的优先级低,但结合性是右;
所以
print ( $value, $value**3, $value++ );
先运算$value++(究竟++什么时候执行没见到文档说明)
然后执行$value**3(这里使用的$value是否执行了++,就要看++了)
最后执行$value;
求解……
5楼2013-08-27 20:40:57
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 国自科面上基金字体 +6 iwuli 2026-03-12 7/350 2026-03-16 21:18 by sculhf
[考研] 0703化学调剂 ,六级已过,有科研经历 +7 曦熙兮 2026-03-15 7/350 2026-03-16 16:34 by houyaoxu
[考研] 283求调剂 +10 小楼。 2026-03-12 14/700 2026-03-16 16:08 by 13811244083
[考研] 085600调剂 +5 漾漾123sun 2026-03-12 6/300 2026-03-16 15:58 by 漾漾123sun
[考研] 材料与化工一志愿南昌大学327求调剂推荐 +7 Ncdx123456 2026-03-13 8/400 2026-03-16 12:15 by karry wen
[考研] 0856求调剂 +3 刘梦微 2026-03-15 3/150 2026-03-16 10:00 by houyaoxu
[考研] 328求调剂 +3 5201314Lsy! 2026-03-13 6/300 2026-03-14 15:31 by hyswxzs
[考研] 材料080500调剂求收留 +3 一颗meteor 2026-03-13 3/150 2026-03-14 10:54 by peike
[考研] 308 085701 四六级已过求调剂 +7 温乔乔乔乔 2026-03-12 14/700 2026-03-14 10:49 by JourneyLucky
[考研] 学硕285求调剂 +13 Wisjxn 2026-03-12 46/2300 2026-03-14 10:33 by JourneyLucky
[考研] 材料与化工(0856)304求B区调剂 +6 邱gl 2026-03-12 7/350 2026-03-13 23:24 by 邱gl
[考研] 材料工程调剂 +9 咪咪空空 2026-03-12 9/450 2026-03-13 22:05 by 星空星月
[考研] 304求调剂 +7 7712b 2026-03-13 7/350 2026-03-13 21:42 by peike
[考研] (081700)化学工程与技术-298分求调剂 +12 11啦啦啦 2026-03-11 35/1750 2026-03-13 21:25 by JourneyLucky
[考研] 315求调剂 +9 小羊小羊_ 2026-03-11 10/500 2026-03-13 21:13 by SXNU李老师
[考研] 【考研调剂求收留】 +3 Ceciilia 2026-03-11 3/150 2026-03-13 20:18 by JourneyLucky
[考研] 求调剂 +7 18880831720 2026-03-11 7/350 2026-03-13 16:10 by JourneyLucky
[考研] 【0856】化学工程(085602)313 分,本科学科评估A类院校化学工程与工艺,诚求调剂 +7 小刘快快上岸 2026-03-11 7/350 2026-03-13 16:06 by ruiyingmiao
[考研] 070303一志愿西北大学学硕310找调剂 +3 d如愿上岸 2026-03-13 3/150 2026-03-13 10:43 by houyaoxu
[考研] 大连大学化学专业研究生调剂 +3 琪久. 2026-03-10 8/400 2026-03-11 10:02 by 琪久.
信息提示
请填处理意见