当前位置:编程学习 > VB >>

请教各位高手:val 与 ccur 的区别

窗体上放四个label值分别是:
label1.caption=161.1
label2.caption=3.8
label3.caption=0
label4.caption=157.3

问题是:
? val(label1.caption)=val(label2.caption)+val(label3.caption)+val(label4.caption)
返回 False

? ccur(label1.caption)=ccur(label2.caption)+ccur(label3.caption)+ccur(label4.caption)
返回 True

--------------------编程问答-------------------- CCur 函数示例
本示例使用 CCur 函数将表达式转成 Currency。
Dim MyDouble, MyCurr
MyDouble = 543.214588   ' MyDouble 为 Double 类型。
MyCurr = CCur(MyDouble * 2)   ' 将 MyDouble * 2 的结果
   ' (1086.429176)转换为 Currency (1086.4292)。

Val 函数
返回包含于字符串内的数字,字符串中是一个适当类型的数值。

Val 函数示例
本示例使用 Val 函数返回字符串中所含的数值。

Dim MyValue
MyValue = Val("2457")   ' 返回 2457。
MyValue = Val(" 2 45 7")   ' 返回 2457。
MyValue = Val("24 and 57")   ' 返回 24。

--------------------编程问答-------------------- 感谢 zdingyun 的帮助 --------------------编程问答-------------------- --------------------编程问答-------------------- 应该是vb里面的数据自动转型问题,第一个结果为false的原因可能是前后数据有空格的出现,利用trim函数或者是对后面的数据再用一下val函数,就会true了,本身运算上没有任何问题 --------------------编程问答-------------------- 由于ccur函数会返回为currency变量,本身的格式不会变化,因此不会出错,问题就出在这里 --------------------编程问答-------------------- 与val无关,这是处理器处理小数运算时产生的问题。

测试:
Print 161.1 = 3.8 + 0 + 157.3
--------------------编程问答-------------------- 最近要用VB。学习中。 --------------------编程问答-------------------- 学习。 --------------------编程问答-------------------- 兄弟,我来啦!狂顶! --------------------编程问答-------------------- val()转换为数值型
ccur()转换为货币型
补充:VB ,  基础类
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,