递归火山软件开发平台

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 火山 源码 类库
查看: 6733|回复: 4
打印 上一主题 下一主题

小数的问题

 关闭 [复制链接]

9

主题

55

帖子

745

积分

高级会员

Rank: 4

积分
745
跳转到指定楼层
楼主
发表于 2020-5-29 19:36:01 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在易语言里,有个取字节集数据的命令,同样的字节集数据,根据要取的数据类型的区别,会得到不同结果

比如:
数据 = { 0, 246, 236, 74 }
结果 = 取字节集数据(数据,#整数型)
结果为:1257043456

但如果是取小数,比如
结果 = 取字节集数据(数据,#小数型)
结果为:7764736


问题:在火山里只有  字节数组到整数(), 这个命令能够得到和易语言里取整数相同结果,但没有字节数组到小数() 的命令。尝试使用整数到小数的强制转换,结果还是1257043456。不能得到7764736这个结果


求助:可以有方法实现  字节数组到小数 的正确效果,
回复

使用道具 举报

444

主题

1万

帖子

4万

积分

超级版主

Rank: 8Rank: 8

积分
40557
沙发
发表于 2020-6-7 19:12:33 | 只看该作者
完事,,这个方法下次火山升级会集成到官方库中。

字节数组到小数.v

42.58 KB, 下载次数: 10

安卓无障碍实战课:点击查看
交流群:641526939
回复

使用道具 举报

444

主题

1万

帖子

4万

积分

超级版主

Rank: 8Rank: 8

积分
40557
板凳
发表于 2020-6-7 19:12:49 | 只看该作者
本帖结贴,如有其他疑问,请重新发帖提问。
安卓无障碍实战课:点击查看
交流群:641526939
回复

使用道具 举报

9

主题

55

帖子

745

积分

高级会员

Rank: 4

积分
745
地板
 楼主| 发表于 2020-6-10 13:51:42 | 只看该作者
本帖最后由 sougao 于 2020-6-10 14:04 编辑
创世魂 发表于 2020-6-7 19:12
本帖结贴,如有其他疑问,请重新发帖提问。

    看了代码感觉有些小问题,不严重,但如不完善一下,对新手来说,可能就是个坑
    代码里转换流程是: 字节数组先到长整数,然后再长整数转小数

     问题1:字节数组到长整数的过程:长整数为8字节,但用户很有可能输入长度不足的字节数组,可转换方法里却先没有纠错或补全长度,而是直接转换,所以一旦用户输入的字节数组长度不够,就会出错。

    问题2:小数即浮点数,有单浮点数【易语言里小数型】(4字节),双浮点数【易语言里双精度小数型】(8字节),代码里长整数转小数,这个应该是转成了双浮点数,经测试,结果是正确的,缺陷是没有转单浮点的方法,统统按双浮点操作,对新手可能也是个坑

   既然是要集成到官方库,请完善下吧。
   另外补充:火山里很多方法,几乎都没有对输入数据进行检查,只要用户输入数据不合规,就直接出错并且无提示。比如数组相关的很多方法,如果输入为空对象,或者数组越界,则会出错且无提示,,
   这个无提示就很头疼了,,

回复

使用道具 举报

444

主题

1万

帖子

4万

积分

超级版主

Rank: 8Rank: 8

积分
40557
5#
发表于 2020-6-10 15:38:26 | 只看该作者
sougao 发表于 2020-6-10 13:51
看了代码感觉有些小问题,不严重,但如不完善一下,对新手来说,可能就是个坑
    代码里转换流程是:  ...

这就需要自己增强代码编写逻辑了。。

有些东西官方库是不能处理的,因为有时候很多人会认为自己的代码没有问题,但是程序又没有报错...。。最后的结果还是跑来到处问。。也找不到原因。

不如直接报错来的实在。。有错误一下子就知道了。。
安卓无障碍实战课:点击查看
交流群:641526939
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|递归火山软件开发平台 ( 鄂ICP备18029190号 )

GMT+8, 2024-11-26 00:09 , Processed in 0.092485 second(s), 21 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表