24小时热门版块排行榜    

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

mocito

铜虫 (初入文坛)

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

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

结果是,
382

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

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

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

» 猜你喜欢

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

已阅   回复此楼   关注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的回帖
查看全部 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的回帖

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的回帖

万孝莉

新虫 (小有名气)

引用回帖:
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的回帖
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 0703一志愿211 285分求调剂 +5 ly3471z 2026-03-13 5/250 2026-03-16 16:16 by 哦哦123
[考研] 285求调剂 +6 ytter 2026-03-12 6/300 2026-03-16 15:05 by njzyff
[考研] 0856求调剂 +3 刘梦微 2026-03-15 3/150 2026-03-16 10:00 by houyaoxu
[考研] 求老师收留调剂 +4 jiang姜66 2026-03-14 5/250 2026-03-15 20:11 by Winj1e
[考研] 材料与化工 323 英一+数二+物化,一志愿:哈工大 本人本科双一流 +4 自由的_飞翔 2026-03-13 5/250 2026-03-14 19:39 by hmn_wj
[考研] 中科大材料专硕319求调剂 +3 孟鑫材料 2026-03-13 3/150 2026-03-14 18:10 by houyaoxu
[考研] 297一志愿上交085600求调剂 +5 指尖八千里 2026-03-14 5/250 2026-03-14 17:26 by a不易
[考研] 复试调剂 +3 呼呼?~+123456 2026-03-14 3/150 2026-03-14 16:53 by WTUChen
[考研] 297求调剂 +4 学海漂泊 2026-03-13 4/200 2026-03-14 11:51 by 热情沙漠
[考研] 331求调剂(0703有机化学 +5 ZY-05 2026-03-13 6/300 2026-03-14 10:51 by Jy?
[考研] 307求调剂 +7 超级伊昂大王 2026-03-10 7/350 2026-03-14 00:49 by JourneyLucky
[考研] 318求调剂 +3 李新光 2026-03-10 3/150 2026-03-14 00:21 by JourneyLucky
[考研] 材料工程,326分,求调剂 +6 KRSLSR 2026-03-10 6/300 2026-03-13 23:47 by JourneyLucky
[考研] 复试调剂 +9 Copy267 2026-03-10 9/450 2026-03-13 23:45 by userper
[考研] 求调剂 +5 一定有学上- 2026-03-12 5/250 2026-03-13 18:31 by ms629
[考研] 26考研求调剂 +5 丶宏Sir 2026-03-13 5/250 2026-03-13 13:05 by JourneyLucky
[考研] 材料专硕274一志愿陕西师范大学求调剂 +4 薛云鹏 2026-03-13 4/200 2026-03-13 10:40 by 学员8dgXkO
[考研] 化工学硕306求调剂 +9 42838695 2026-03-12 9/450 2026-03-13 10:16 by houyaoxu
[考研] 290求调剂 +3 柯淮然 2026-03-10 8/400 2026-03-11 13:48 by 柯淮然
[考研] 一志愿:武汉理工,材料工程,英二数二 总分314 +3 2202020125 2026-03-10 4/200 2026-03-10 13:54 by xiongyaxuan
信息提示
请填处理意见