| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1427 人关注过本帖
标题:如何获取N型字段的小数位长度?
只看楼主 加入收藏
xvfp
Rank: 2
等 级:论坛游民
帖 子:34
专家分:24
注 册:2011-4-13
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:16 
如何获取N型字段的小数位长度?
程序在运行时,需要判断正在处理的N型字段(或变量)、其小数位数有多长。用哪个函数?
搜索更多相关主题的帖子: 如何 
2011-07-21 08:11
hu9jj
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:红土地
等 级:贵宾
威 望:400
帖 子:11857
专家分:43421
注 册:2006-5-13
收藏
得分:0 
好象没有直接的函数,但可以通过其他方法实现。下面的代码就是方法之一,受VFP数据的精度限制,最多只能检测11位以内的小数,超过11位时返回的全是11位。

nNumbe=123456.7890123456

nLen=0
DO WHILE INT(nNumbe*10^nLen)/10^nLen # nNumbe
    nLen=nLen+1
ENDDO

?"共有"+str(nLen)+"位小数!"

活到老,学到老!http://www.(该域名已经被ISP盗卖了)E-mail:hu-jj@
2011-07-21 09:00
xvfp
Rank: 2
等 级:论坛游民
帖 子:34
专家分:24
注 册:2011-4-13
收藏
得分:0 
对于一个N型字段,其值=0时,如何做?
2011-07-21 09:08
hu9jj
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:红土地
等 级:贵宾
威 望:400
帖 子:11857
专家分:43421
注 册:2006-5-13
收藏
得分:0 
值为0时,其小数位数也为0。用程序测试一下不就可以了么。

活到老,学到老!http://www.(该域名已经被ISP盗卖了)E-mail:hu-jj@
2011-07-21 09:21
xvfp
Rank: 2
等 级:论坛游民
帖 子:34
专家分:24
注 册:2011-4-13
收藏
得分:0 
我要的正是小数位的长度、而不是小数的值,以便在程序中做处理。
2011-07-21 10:01
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
在VFP中,變量的小數位數是由SET DECIMALS TO命令決定的。

授人以渔,不授人以鱼。
2011-07-21 10:27
xvfp
Rank: 2
等 级:论坛游民
帖 子:34
专家分:24
注 册:2011-4-13
收藏
得分:0 
回复 6楼 TonyDeng
我要面对的是N型字段(已有N型内存变量的处理方法)。软件的使用人会在处理N型字段(比如录入数据)时,可能会激活一个功能插件。此插件要知道这个N型字段小数位的长度。
2011-07-21 10:48
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
字段的小數位數在表結構中獲得。你1樓說要連内存變量的小數位數也獲得,那沒有表結構,只能用SET("Decimals")的值求取。Integer類型只能在字段中使用,在内存變量中,全部是Numeric,整數也有小數。

[ 本帖最后由 TonyDeng 于 2011-7-21 10:53 编辑 ]

授人以渔,不授人以鱼。
2011-07-21 10:51
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
你在Command窗口打如下命令試試:
? SET DECIMALS TO 4
? 123
? SET DECIMALS TO 6
? 123
看看你如何判斷123的小數位數?

授人以渔,不授人以鱼。
2011-07-21 10:56
xvfp
Rank: 2
等 级:论坛游民
帖 子:34
专家分:24
注 册:2011-4-13
收藏
得分:0 
插件要求,首先判断N型字段的小数位数n,然后用set decimals to n 去匹配此N型字段。
我在针对N型字段的输入区写类(class),所以提出了此问题。
2011-07-21 11:11
快速回复:如何获取N型字段的小数位长度?
数据加载中...
 
   



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

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