【问题标题】:What happens when you pass a negative number to `inc`?当你将一个负数传递给`inc`时会发生什么?
【发布时间】:2015-05-28 22:21:42
【问题描述】:

有一个名为incroutine in Pascal。它用于增加数字。还有一个名为dec 的例程,用于递减数字。

只有一个参数,inc 会将参数加一。同样,dec 将减一。您可以指定第二个参数,它表示要增加或减少多少。在我能找到的所有例子中,第二个论点总是肯定的。

我正在审查一些代码,在我看来 inc 可能会被调用,并带有一个否定的第二个参数。会发生什么?允许吗?


注意:我正在审查此代码作为我工作的一部分。我没有能力编译和运行代码,所以我不能只是尝试看看会发生什么。

【问题讨论】:

    标签: pascal routines


    【解决方案1】:

    使用负数作为第二个参数调用Inc 将与将负数添加到整数中一样 - 它会减小值。例如,使用整数变量i

    i := 10;
    Inc(i, -10);  // i = 0, equivalent to i := i + -10
    Inc(i, -10);  // i = -10, equivalent to i := i + -10
    

    Dec 带有负数将做相反的事情(增加值)。在上面的最后一个Inc 之后加上Dec(i, -10) 将再次导致i = 0

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-01-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-11-15
      • 2015-09-21
      • 1970-01-01
      相关资源
      最近更新 更多