【问题标题】:implicit declaration in libreoffice basiclibreoffice basic 中的隐式声明
【发布时间】:2017-05-18 15:45:53
【问题描述】:

我已经尝试了示例代码here (a = b + c)。令人惊讶的是,现实并非预期的行为。

在 Win7 和 LO 4.4.2.2 中,我看到 ab 被声明为值为 0 的整数,而 c 为空。

在 Ubuntu 16.04 和 LO 5.1.6.2 中,它们都是空的。

知道如何解释第一种情况吗?

【问题讨论】:

  • 在 Linux Mint 上使用 LO 4.4.3.2,它们都是空的,所以我无法重现您的结果。

标签: basic libreoffice-basic


【解决方案1】:

来自https://help.libreoffice.org/Basic/Using_Variables

一旦声明了变量,它就会自动设置为“Null”值。数值变量在声明后立即自动赋值为“0”。

正如问题中的链接所暗示的那样,隐式 初始化 在 Basic 中是不好的编程习惯。使用旧版本时,奇怪的结果应该不足为奇。

对于 Perl,$a = $b + $c; 将 $a 的值设置为零,因为它是一个数学结果,并且 $b 和 $c 被初始化为一个空字符串。 Perl 在促进未声明变量方面有着悠久的历史,尽管现在推荐使用 use strict

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-04-01
    • 2016-03-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-20
    相关资源
    最近更新 更多