魔兽首页最新地图防守地图对抗地图角色剧情TD塔类图标准战役ORPG地图其它地图
魔兽论坛攻略秘籍补丁工具RPG 录像制图教学制图资源魔兽战队新图试玩通魔作坊

您的位置:魔兽争霸U9网 >> 制图教学

通魔之路(WE主讨论区):[转帖]JASS 的N则运算法则

作者:青蛙公主    文章来源:U9论坛    点击数:    更新时间:2006-8-30 17:18:23
作者:传说中的沙加

如果你的 JASS 功力已经过了入门级,那么请跳过这一楼,直接到下面灌水
这里来说一下 JASS 滴N则运算法则:
那就是 —— 和你数学课本上的运算法则相同
~括号->次幂->乘除->加减~
这和其他某些语言略有不同(那些语言大多照从左到右顺序运算)。
不过,有一点要特别注意:
    integer 的运算结果仍索 integer
      real      的运算结果仍索 real
—— 哦?看起来象废话?
那让我们来看一看下面这个例子:
这是 BLIZZARD.J 里一个计算余数的函数的主要部分:
      local integer modulus = dividend - (dividend / divisor) * divisor
这个函数接受两个 integer 型变量 —— 一个作为被除数的 dividend ,以及
一个作为除数的 divisor 。并返回一个 integer 型的 modulus ,即余数。
所以,把它写成小学数学课本上的公式就成了:
      余数 = 被除数 - (被除数 ÷ 除数)× 除数
现在,有些细心的同志已经发现了:“(被除数 ÷ 除数)× 除数”  不就索被除数吗?
然后用被除数来减被除数不就变成 0  了?这个函数无论如何都只会返回 0 啊!
错老~~
大家还记得这个法则吗?
  integer 的运算结果仍索 integer
   real      的运算结果仍索 real
这里指的“运算结果”包括了运算过程中的每一步运算。下面让我们来重新认识一下刚才那条语句:
      local integer modulus = dividend - (dividend / divisor) * divisor
比如,我们传递给它两个参数(18, 5)
那么,它先计算:
       18÷5=?
可是,关键就在这里。由于integer 的运算结果仍索 integer
所以,“18÷5”的结果对 JASS 来说并不是很多人想象中的“3.6”,而是“3”!
接下去的,就好解释了:
       3×5 =15
          18-15=3
而“18除以5”确实余3,完全正确!
好了,JASS 的N则运算法则暂时说完老~

责任编辑:瞳瞳
进入论坛参与针对本文章的讨论
文中部分附件请进入论坛下载
本文章地址:
  • 上一篇:通魔之路(WE主讨论区):[原创]狙击手的演示
  • 下一篇:
  • 相关文章

    进入论坛参与针对本文章的讨论用户评论

    地图 攻略
    热门搜索: 仙之侠道 真三国无双 Dota Allstar

    地图专区导航

    热门地图攻略

    热门地图周排行

    最新推荐地图

    地图下载总排行

    关于我们  -  联系我们  -  广告优势  -  广告服务
    建议意见:玩家点击留言  商务合作:客户点击留言
    西安优久数码科技有限公司 版权所有 陕ICP证08000654号