|
|
1
16
我猜你是说VB.Net。 根据VB语言规范中的语法,您可以在此处阅读: 结果应该是“6”。 这是因为“line if语句”的语法是:
“陈述”被定义为
编辑: 我想指出的是,调试代码不是“作弊”。 我曾经在微软的VB编译器团队工作。 有时规格不明确,或者与我们实际发货的不符。在其中一些情况下,解决方案(我们为修复它所做的工作)总是基于“好吧……编译器现在做什么”。 有时我们会改变编译器,有时我们会更改规范。 然而,在我们做出决定之前,我们总是会运行编译器,看看它实际做了什么。 所以…调试代码是弄清楚它的作用的重要组成部分。.. |
|
|
2
3
我已经有一段时间没有广泛使用BASIC了,所以这只是一个猜测,但我认为
坦率地说,代码不太可读。我觉得,通过不将所有内容都放在一行中并使用缩进,代码将更具可读性:
如果我没记错的话,我相信这是等效的代码。 但是,如果代码不等价,这就引出了另一个问题:原始代码在某种程度上是“棘手的”,它似乎在说什么,而不是真正发生的事情。类似于C风格语言中的陷阱:
该代码似乎暗示
最好尽量坚持编码风格,使代码的意图更加明显,不那么具有歧义。 |
|
|
3
2
最终结果是6。
|
|
|
4
0
只是猜测 fred=6,因为同一行上可以有多个语句,用冒号分隔。 不确定“else”是否合法(即可编译) 依我之见,应该选择更好的编码风格:
|
|
|
5
0
在非常古老的BASIC方言中,唯一能跟在“THEN”后面的是行号。许多方言对此进行了改进,允许代码遵循“THEN”;在解析完“THEN”之后,如果指示的条件为false,它们将跳到下一行,否则将继续当前行。其他方言增加了跳过到行尾或“ELSE”的能力,以先到者为准;尝试执行“ELSE”语句将跳到行尾。 当QuickBasic被引入时,它增加了对多行if/then/else块的支持,但保留了对旧式方法的支持。Visual Basic紧随其后,vb.net延续了这一传统。 |
|
|
Mear1628 · vb.net从随机选择的端口号接收UDP 1 年前 |
|
|
user1946932 · .Net正则表达式在所有字符前添加空格 1 年前 |
|
|
user1946932 · 正则表达式:删除连续两个以上的<br>? 2 年前 |
|
|
Josh · 通过反思访问孩子的财产 2 年前 |
|
|
Khu RJ · 更新网格中的单元格-DevExpress网格控件 2 年前 |
|
|
Mick · VB.NET Regex。替换不起作用(数组未更新) 2 年前 |