我发现一个VB很“高级”的功能!?关于\

pigpag 2003-08-15 08:44:42
"\"竟然有四舍六入五留双的功能:
Print 4.5\1
Print 5.5\1
Print 6.5\1

你看了就会明白的。

不知谁以前注意到过
...全文
21 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
pigpag 2003-08-16
  • 打赏
  • 举报
回复
Cint还支持“四舍六入五留双”,真高级。
pigpag 2003-08-16
  • 打赏
  • 举报
回复
我原先以为是这样的
Print 6.5\1 = Print Int(6.5)\1
Print 5.5\1 = Print Int(5.5)\1

或者说是Fix()

但是结果非两者之一。不知zyl910试过没有。

我强调的是“四舍六入五留双”,不是整数
tanyx 2003-08-15
  • 打赏
  • 举报
回复
不算高级,只是你知道晚了罢
SwordMan2001 2003-08-15
  • 打赏
  • 举报
回复
写错了, 不是CSDN, 是MSDN, 呵呵
SwordMan2001 2003-08-15
  • 打赏
  • 举报
回复
CSDN上有这样一段话描述几个函数的区别:

CInt -32,768 至 32,767,小数部分四舍五入。
当小数部分恰好为 0.5 时,Cint 和 CLng 函数会将它转换为最接近的偶数值。例如,0.5 转换为 0、1.5 转换为 2。Cint 和 CLng 函数不同于 Fix 和 Int 函数,Fix 和 Int 函数会将小数部分截断而不是四舍五入。并且 Fix 和 Int 函数总是返回与传入的数据类型相同的值。

zyl910 2003-08-15
  • 打赏
  • 举报
回复
VB会自动进行类型转换
SwordMan2001 2003-08-15
  • 打赏
  • 举报
回复
哦, 没错, 还是先转成整型再运算, \只能用于整型运算,
应该是分别相当于

cint(4.5)\1, cint(5.5)\1, cint(6.5)\1
分别输出 4,6,6
SwordMan2001 2003-08-15
  • 打赏
  • 举报
回复
Print 4.5\1
Print 6.5\1
这两个好理解, 相当于int(4.5)\1, int(6.5)\1
可Print 5.5\1输出为6, 我真是纳闷了.

我也没有想到\能够用在非整型数据上
zyl910 2003-08-15
  • 打赏
  • 举报
回复
\是整数除法
只对Long、Integer、Byte使用
VB会自动进行类型转换

7,763

社区成员

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

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