GW Basic默认变量初始化

时间:2012-09-14 15:29:22

标签: variables gw-basic

我正在处理遗留代码并遇到了一些我在查找GW Basic教程和手册后无法解释的内容:在530行的比较中使用了一个变量(P9%) (IF P9%<> 0)在代码到达860行的定义之前。它不是一段复杂的代码,总共只有大约1200行,所以我有信心我没有错过任何goto或gosub或者任何比这个比较早860的东西。

我很好奇这个程序在运行时是如何影响程序的。我的大部分经验都是使用c ++,这种东西不能编译,如果它有一个未分配的变量可能包含任何适合的东西,但我不知道在Basic中为变量赋予了什么样的默认赋值。

1 个答案:

答案 0 :(得分:0)

自从我在gwbasic写了很多年以来已经很多年了!

如果我没记错的话,在这种情况下,变量被指定为零值。我认为Gwbasic(和Qbasic)在第一次引用时为所有变量赋值,这通常为零或字符串变量的空字符串。

有趣的是,在使用DIM语句创建数组时,数组中的所有项也都以这种方式初始化。

即使使用这种机制,通常最好初始化变量,只是为了清楚发生了什么。

为gwbasic编写时代的许多程序员尽可能地省略了程序指令所使用的内存量,因此他们对其他东西有更多的东西。所以这可能就是为什么它没有初始化。