请大家一起来研究一下!!!!!!比较这几种循环的速度问题!!!!!

flyingZFX 2004-05-11 12:54:02
Option Explicit

Private Sub Form_Load()
Dim i As Long
Dim a As Double
Dim s As Long

a = CDbl(Timer)
Debug.Print a
For i = 1 To 1000000
s = s + 1
Next i
Debug.Print CDbl(Timer), CDbl(Timer) - a
Debug.Print "-----------------"
'===============================================
a = CDbl(Timer)
Debug.Print a
i = 1
While i <= 1000000
s = s + 1
i = i + 1
Wend
Debug.Print CDbl(Timer), CDbl(Timer) - a
Debug.Print "-----------------"
'===============================================
a = CDbl(Timer)
Debug.Print a
i = 1
Do While i <= 1000000
s = s + 1
i = i + 1
Loop
Debug.Print CDbl(Timer), CDbl(Timer) - a
Debug.Print "-----------------"


End Sub


第一次结果
2911.331
2911.40087890625 .069878906249869
-----------------
2911.401
2911.55102539063 .15002539062516
-----------------
2911.551
2911.64111328125 9.01132812500691E-02
-----------------


第二次结果
2939.574
2939.64404296875 7.00429687499309E-02
-----------------
2939.644
2939.78393554688 .139935546875222
-----------------
2939.784
2939.8740234375 9.00234374998945E-02

第三次结果
3068.549
3068.61889648438 6.98964843750218E-02
-----------------
3068.619
3068.77001953125 .151019531249858
-----------------
3068.78
3068.86010742188 8.01074218747999E-02
-----------------



...全文
183 28 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
28 条回复
切换为时间正序
请发表友善的回复…
发表回复
hanshufan 2004-06-09
  • 打赏
  • 举报
回复
语法:

DO WHILE lExpression
Commands
[LOOP]
[EXIT]
ENDDO

参数:
lExpression 为一逻辑表达式,其值如果是“真”,即执行commands程序组,如果表达的值为“假”,则跳过该段程序组,执行enddo后面的语句。

如果 lExpression 的值为真,则执行 commands 程序组,该程序组执行完后,就到enddo语句,enddo会将程序返回 do while 再次验证 lExpression 是否为真,如仍是,则又一次执行 commands ,如此循环往复,直到 lExpression 为假,或遇上 exit 语句
所以我觉得它会比for循环慢!!!
hanshufan 2004-06-09
  • 打赏
  • 举报
回复
我也觉得for循环比较快一些!!
flyingZFX 2004-06-09
  • 打赏
  • 举报
回复
没想到,连问题的数据也都丢失了
wooin 2004-06-09
  • 打赏
  • 举报
回复
vb的timer太不准了,千万不要用了,自己用timegettime或者timegetsystemtime做定时器吧
juror 2004-06-09
  • 打赏
  • 举报
回复
BitBlt 2004-05-14
  • 打赏
  • 举报
回复
Private Declare Function GetTickCount Lib "kernel32" () As Long

把你的程序中所有的CDbl(Timer)改成GetTickCount就行了,单位是毫秒。
slmn 2004-05-14
  • 打赏
  • 举报
回复
gz
flyingZFX 2004-05-14
  • 打赏
  • 举报
回复
TO pigpag(噼里啪啦 - How to prepare for the TOEFL test?) ::

悲衰的人呀!!!!
可怜的人呀??
学海无涯!!!!!!!(中国落后+死板教育制度下的人呀!!!!)
快醒来吧!!!!!

TO BitBlt(Raster Operater)::

大哥,不要光说,把你说的方法贴出来让大家看看!!!
flyingZFX 2004-05-14
  • 打赏
  • 举报
回复
TO hackate(今生穷死了)::

哼!!

你就这么在乎分呀!!!!!!!!!!!!

人家看看都想着看到你!!!!!!!!!1

可是你却对我说,你讨厌我???????????

为什么呀??????
Kivic 2004-05-14
  • 打赏
  • 举报
回复
这个测试不能说明问题,没有测试环境,测试的内容基本是不相关的语句,没有可比性,timer计时受线程限制,本身不会准确。
建议建立3个exe文件,For i = 1 To 1000000里的i不能作为测试值,用外部时间测试,不从内部计时
flyingscv 2004-05-14
  • 打赏
  • 举报
回复
这个是一样的
fuanwei 2004-05-13
  • 打赏
  • 举报
回复
我靠,现在CPU转的这么快,还在乎那一点点。
其实重要的还是你的编程思想。
flyingZFX 2004-05-13
  • 打赏
  • 举报
回复
为什么没有人进来呀,,,
是因为没有分吗???
不会吧,
难道大家一点都不关心一些技术问题吗?
ryuginka 2004-05-13
  • 打赏
  • 举报
回复
up
BitBlt 2004-05-13
  • 打赏
  • 举报
回复
我靠~~~~~~~~
你用timer测试?
用gettickcount才够准确.
pigpag 2004-05-13
  • 打赏
  • 举报
回复
//难道大家一点都不关心一些技术问题吗?

唉~~~必须去关心更重要的,譬如英语考试这类的…… :(
hackate 2004-05-13
  • 打赏
  • 举报
回复
是啊,是啊,!

呵呵,我工作了呢,没时间啊,公司那破机子上不去了啊

我在学习呢,你真小气啊,我讨厌你,还没分呢,哼
flyingZFX 2004-05-12
  • 打赏
  • 举报
回复
To Hackate(今生穷死了)!!!

喂!!!!

你已经很长时间没有上MSN了,,怎么回事了!!

我都想你了!!!!
你呀!就会说没有用的!!不会说点意见呀!!!
flyingZFX 2004-05-11
  • 打赏
  • 举报
回复
自己顶一下!!!!!

为什么看不见呢!!

CSDN有什么问题呀????
longki 2004-05-11
  • 打赏
  • 举报
回复

在我的观点中,好像for循环比while循环好,do...while就没试过!
加载更多回复(8)
Domain4.3(明小子)10.10.10更新版主要更新内容如下: 1.驱除部分死连接,恢复部分官方连接 2.改变默认显示页面为本人BLOG 3.修正程序在检测时出错的BUG 4.修正程序在部分系统中无法启动的BUG 5.加了一个功能模块,但还不成熟,隐藏了,高手的话可以用OD调出来!>!< 6.修复前段时间一些朋友反映的错误和程序宏 7.增加四款SKN皮肤! 10.10.11紧急更新: 1.修正新版程序在部分系统中启动后直接导致系统蓝屏的BUG 2.修正域名查询的几个错误 3.修正程序批量检测查询到域名的时候无反映的BUG! Domain4.2(明小子)10.01.16更新版主要更新内容如下: 1.删除所有无关数据 2.优化急速代码 3.改变启动线程 4.增加SQL数据批量导出功能 5.加入几个优化进程模块,非后门.后台运行. 6.锁定主程序栏目宽和高,不在恢复 7.删除“辅助工具”模块中全部代码 8.修正XP SP3 程序下兼容问题 9.重新改写域名查询旁站线程 程序于2010年01月16号调试完毕! 提别提示:第4个功能只能运行在完整版的windows XP 平台系统中,其他平台无法运行,如果出现恢复按钮并不能保存自行调试与本程序无关.谢谢合作! 宝宝的话:有朋友们的鼓励才会有这个版本的发布,这当是我送给大家2010年里的第一个礼物吧。 Domain4.1(明小子)0901更新版主要更新内容如下: 1.增加新系统兼容模块,全面兼容2000-2008各系统 (部分精简版系统除外) 2.优化网站打开速度,删减部分无用内核信息,全面加快程序启动速度. 3.基于09.05.20号内核提升,改变搜查循环的一个死BUG! 4.删除在0520上增加的一个补针函数,并使用新的函数替换.保证不报错. 5.不在兼容xpsp3,因为没时间去修正这个错误。所以可能部分SP3系统运行不起来本程序 6.增加部分程序扩充空格代码,为下个版本更新做好铺垫 小提示:保留旧的IP反查连接系统,原因没有找到新的和稳定的IP反差服务器!如果有能提供的与本人联系!谢谢合作 Domain4.1(明小子)0520更新版主要更新内容如下: 1.基于08.10.01号内核提升,修正一次关键错误。 2.替换原程序自带的那个小马,该为最新美化免杀版的小马! 3.添加一个服务器挂钩程序(非插件),使修改后的新内核兼容vista系统。 4.程序数据库默认名为:SetData.mdb 大家使用3.5版本以上的MDB数据.其他低版本程序可能不兼容! 5.删除后台下载统计代码(以前没发现,本人也是从网站上面下的软件,排除作者自添加行为) 6.加了一个补针,针对sql注入功能中的一个小BUG。 7.删除了很多没有用的代码,最大限度的优化程序启动速度。 8.更新部分在xpsp3下出错的几个小BUG(小问题小解决,这个错误仅针对部分优化过度的XPSP3系统)。 提记:很多朋友说需要修改下程序IP域名查询功能,这里说明下.由于内核找不到关键句柄导致无法更新,下个版本在仔细看看! Domain4.0(明小子)1001更新版主要更新内容如下: 1.更新部分过度优化过的系统不兼容问题。 2.修改内存识别函数,使其降低软件在使用期间所占用的内存大小。 3.基于08.09.15号内核提升,修正因修改软件所出现的几个导致软件崩溃的几个BUG。 4.换了软件自带的那个垃圾皮肤。加入兼容美化皮肤!更美观! 5.兼容前版本数据库支持功能 6.去掉了没有用的PHP入侵选项和几处小BUG...... 转贴是一种美德!分享也是一种快乐,工具仅做辅助作用勿用在非法用途上! 程序自带本BLOG连接,启动比较慢!不喜勿用!谢谢合作!

7,785

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧