gpt4 book ai didi

basic - BASIC 函数的默认返回值

转载 作者:行者123 更新时间:2023-12-04 04:40:35 26 4
gpt4 key购买 nike

以下是 BASIC 中的示例程序。如果标记的条件不为真,有人能告诉我这个函数返回什么吗?我必须将程序移植到 C++ 并且需要理解它。我没有基础知识 - 请忍受简单的问题。

FUNCTION CheckPoss (u)
tot = tot + 1
f = 0
SELECT CASE u
CASE 2
f = f + CheckIntersection(1, 3, 2, 1) 'A
CASE 3
f = f + CheckIntersection(2, 3, 3, 1) 'B
END SELECT
IF f = 0 THEN <============== This condition if true,
CheckPoss = 1 <============== then return value is 1
IF u = 9 THEN
PrintSolution
END IF
END IF
END FUNCTION

最佳答案

这是不良编程的一个很好的例子。首先在这个函数中改变了一些未知的全局变量。 “tot = tot + 1”!第二行“F”是另一个未知的全局变量,被赋值为“0”。或者这是唯一使用此变量的地方?在这种情况下,它是此处隐式声明的变体。使用一个dim 来声明它。这样做基本上是合法的。全局变量应该作为参数传递给函数,如下所示:
function CheckPoss(u as integer, tot as integer) as integer

dim f as integer

f=0

这都是关于良好实践的,因此输入清晰,输出清晰,所有变量分配都应通过传递给函数的参数进行。
返回类型也未声明。这是视觉基础吗?还是一些较旧的基本?无论如何,在visual basic的情况下,返回类型是一个变体。较旧的 basic 将是整数类型。

如果不满足条件,此函数的输出很可能为零!这在代码中也应该是清楚的,它并不清楚,我理解你为什么问。我很惊讶这段代码来自一个工作程序。

祝你的项目好运!

关于basic - BASIC 函数的默认返回值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18965666/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com