| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 748 人关注过本帖
标题:程序运行中出现某个计算错误,如何继续运行下去?
只看楼主 加入收藏
hu_jp2004
Rank: 1
等 级:新手上路
帖 子:21
专家分:3
注 册:2012-6-30
结帖率:100%
收藏
已结贴  问题点数:40 回复次数:12 
程序运行中出现某个计算错误,如何继续运行下去?
程序运行中出现某个计算错误,如何继续运行下去(忽略该语句)?,程序如:
语句1
语句2(出现计算错误)
语句3
语句4
我希望不要在语句2(计算错误)时程序终止,继续执行下去,执行语句1,语句3,语句4。。。
另外程序是正常的,计算错误表现在溢出错误。
搜索更多相关主题的帖子: 计算 如何 
2013-01-07 22:37
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
如果某种错误能给你跳过而不影响程序的继续运行,它就不值得被定义为错误并抛出。

授人以渔,不授人以鱼。
2013-01-07 22:56
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:15 
resume 命令

继续执行一个挂起的程序。

语法

RESUME

说明

使用 SUSPEND 可以挂起程序的运行。挂起的程序重新运行时,从原来挂起时正在执行的行开始。
SUSPEND 和 RESUME 是非常有用的调试工具。程序在执行时,可以将它挂起,以便检查 Visual FoxPro 环境的当前状态。这些状态包括内存变量、窗口、菜单栏以及菜单定义等。

重要内容
为防止程序挂起时执行的命令干扰后面的程序输出,应在恢复程序运行前执行 CLEAR 命令,清除 Visual FoxPro 主窗口或活动的用户自定义窗口。

坚守VFP最后的阵地
2013-01-07 23:02
qjbzjp
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:尧的故乡
等 级:贵宾
威 望:48
帖 子:1914
专家分:4397
注 册:2007-3-14
收藏
得分:0 
既然知道是溢出错误,为什么不预先检查防止?这很好解决的,例如除法,分母为零产生溢出。

相互学习,互相交流,共同提高。
2013-01-07 23:09
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:0 
这种数值溢出错误是可以避免的,如楼上所说。

坚守VFP最后的阵地
2013-01-07 23:12
hu9jj
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:红土地
等 级:贵宾
威 望:400
帖 子:11857
专家分:43421
注 册:2006-5-13
收藏
得分:0 
既然这行语句可以忽略跳过,何不直接删除此语句,一劳永逸。

活到老,学到老!http://www.(该域名已经被ISP盗卖了)E-mail:hu-jj@
2013-01-08 08:10
tlliqi
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:204
帖 子:15453
专家分:65956
注 册:2006-4-27
收藏
得分:0 
以下是引用hu9jj在2013-1-8 08:10:06的发言:

既然这行语句可以忽略跳过,何不直接删除此语句,一劳永逸。
忽略跳过等同于没用,不如直接删除
2013-01-08 08:37
hu_jp2004
Rank: 1
等 级:新手上路
帖 子:21
专家分:3
注 册:2012-6-30
收藏
得分:0 
我可能没有表达清楚,对DBF表中某条记录、某个值(字段)计算出现错误,
比如有100条记录:第7条记录某个字段值计算溢出,出现几个星号,跳出报错对话框,我
(人工)选择【忽略】,程序继续执行下去,完成了100条记录的计算。我希望:
不跳出报错对话框,自动执行下去,不知能否实现?
2013-01-08 09:58
wzxc
Rank: 9Rank: 9Rank: 9
来 自:齐鲁大地
等 级:贵宾
威 望:39
帖 子:985
专家分:1296
注 册:2006-4-25
收藏
得分:0 
出现星号:
1、如果字段长度不够,增加长度。
2、计算语句加 for 子句 ,只计算符合条件的记录。
3、 on error 来捕捉错误,根据错误号来判断程序的走向。

认真看书学习,弄通Fox主义。
2013-01-08 10:27
tlliqi
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:204
帖 子:15453
专家分:65956
注 册:2006-4-27
收藏
得分:0 
以下是引用hu_jp2004在2013-1-8 09:58:56的发言:

我可能没有表达清楚,对DBF表中某条记录、某个值(字段)计算出现错误,
比如有100条记录:第7条记录某个字段值计算溢出,出现几个星号,跳出报错对话框,我
(人工)选择【忽略】,程序继续执行下去,完成了100条记录的计算。我希望:
不跳出报错对话框,自动执行下去,不知能否实现?
你的表达确实让人云里雾里
可参考这样做
举个例子说
零不能做除数,比如有100条记录:第7条记录除数字段值为零,直接除计算会溢出
要避免这样,可用函数。比如iif()
2013-01-08 10:40
快速回复:程序运行中出现某个计算错误,如何继续运行下去?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.025780 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved