Vb6 我们能用While循环代替Do-While吗

Vb6 我们能用While循环代替Do-While吗,vb6,Vb6,我可以用While循环替换DO While(…)吗?在您的情况下,不需要使用DO While循环,使用While循环可以得到相同的结果 Open App.Path & "\employee.txt" For Input As #3 Do While (Not EOF(3)) Input #3, strEmployeeRead lstEmployee.AddItem (strEmployeeRead) Loop Close #3 通常,当您需要在检查您的状态之前至少进行

我可以用While循环替换DO While(…)吗?

在您的情况下,不需要使用
DO While
循环,使用
While
循环可以得到相同的结果

Open App.Path & "\employee.txt" For Input As #3

Do While (Not EOF(3))
    Input #3, strEmployeeRead
    lstEmployee.AddItem (strEmployeeRead)
Loop
Close #3
通常,当您需要在检查您的状态之前至少进行一次迭代时,您会选择在
While
循环上执行
Do..While
循环,例如

While (Not EOF(3))
    ...
Wend

视情况而定,你试图实现什么以及实际发生了什么?这两者之间没有区别,而空谈。。。边说边做。。。循环
执行While
是一个“While循环”。实际上,您希望如何处理此循环?VB6中没有
End While
。有一个
While/Wend
legacy构造。@TomCollins问题是“我们能用While循环代替Do-While吗”-这个问题的答案是“是”。
Do..While
While
循环更灵活,但是,如果
While
循环被认为是“不推荐的”和“出于遗留目的”,我会感到惊讶,因为它在许多语言中都是一种相当流行的迭代机制。是的,这个问题是按要求回答的。我添加了这条评论,以便OP知道在“VB6”中,而Wend是官方“不推荐的”。评论不是针对你的,詹姆斯。我移动了我的评论,并将其放在问题下。为什么不使用“do…loop直到eof(3)”?它是否更灵活。Do循环可以与“While”或“Until”配对,并且可以在循环的“开始”和“结束”检查条件。因此,在我的书中,这使它的灵活性提高了4倍。
Do
    ...
Loop While (Not EOF(3))