修改

开的9年前

关闭3年前

#3179 关闭 缺陷 (固定的)

小写十六进制数字错误

报告人: 捷克 所有者: 乔恩
里程碑: 3.3.15.4条 组件: AutoIt(自动识别)
版本: 3.3.14.2 严重程度:
关键词: 编号 十六进制 复写的副本:

说明

对于表示整数的小写十六进制字符串,解释器并不挑剔。Number函数似乎忽略了这一事实。要么这是一个错误,要么它代表了一种不一致性,这在我看来是不可取的。

控制台写入('执行()'&@LF);AutoIt中的整数不区分大小写控制台写入(执行('0x07AFBFF4FF55FF0')&@LF);大写[成功]控制台写入(执行('0x07afbfef4ff55ff0')&@LF);小写[成功]控制台写入(执行('0x07aFbFeF4FF55FF0')&@LF);混合[成功]控制台写入(@LF&'数字()'&@LF);Number()似乎区分大小写控制台写入(编号('0x07AFBFF4FF55FF0')&@LF);大写[成功]控制台写入(数字('0x07afbfef4ff55ff0')&@LF);小写[失败]???控制台写入(数字('0x07aFbFeF4FF55FF0')&@LF);混合物[失效]???

附件(0)

更改历史记录(5)

注释:1 改变9年前捷克

我忘了提及有关MVP私人论坛的更多信息:https://www.autoitscript.com/forum/topic/178945-conversion-to-number/#comment-1284838
它是$NUMBER_AUTO标志,其行为与解释器不同。

注释:2 改变9年前匿名

在快速到达任何地方后,一位天使走过来,在我耳边低声说道:

'此问题与二进制数据的小写字符串表示无关。真正的问题是字母“e”,它被视为浮点的绰号(科学e符号)

控制台写入(数字('0x07afbfaf4ff55ff0')&@LF)

注释:3 改变9年前作者:jchd18

这位天使有点醉了:事实上,Number有两个不同的错误,都与案例敏感性有关。

首先,它对“1E2”和“1E2”的解释不同,“1E2”被转换为1(错误)而不是100。
其次,它对十六进制值中任何具有8个以上十六进制数字的“e”位进行区分大小写的解释,例如“0x0000001E2”-->482(正确)但“0x000001e2”-->0

控制台写入(“测试1E2-->”)控制台写入(1E2&@LF)控制台写入(“测试1e2-->”)控制台写入(1e2&@LF)控制台写入(“测试0x1E2-->”)控制台写入(0x1E2&@LF)控制台写入(“测试0x1e2-->”)控制台写入(0x1e2&@LF)控制台写入(“测试0x0000001E2-->”)控制台写入(0x0000001E2&@LF)控制台写入(“测试0x0000001e2-->”)控制台写入(0x0000001e2&@LF)控制台写入(@LF)ConsoleWrite(“测试执行(1E2)-->”)控制台写入(执行(1E2)&@LF)控制台写入(“测试”和“执行(1e2)-->”)控制台写入(执行(1e2)&@LF)ConsoleWrite(“测试执行('1E2')-->”)控制台写入(执行('0x1E2')&@LF)ConsoleWrite(“测试执行('1e2')-->”)控制台写入(执行('0x1e2')&@LF)ConsoleWrite(“测试执行('0x0000001E2')-->”)控制台写入(执行('0x0000001E2')&@LF)ConsoleWrite(“测试执行('0x0000001e2')-->”)控制台写入(执行('0x0000001e2')&@LF)控制台写入(@LF)控制台写入(“测试编号('1E2')-->”)控制台写入(数字('1E2')&@LF);大写[失败]控制台写入(“测试编号('1e2')-->”)控制台写入(数字('1e2')&@LF);小写[成功]控制台写入(“测试编号('0x1E2')-->”)控制台写入(数字('0x1E2')&@LF)控制台写入(“测试编号('0x1e2')-->”)控制台写入(数字('0x1e2')&@LF)控制台写入(“测试编号('0x000001E2')-->”)控制台写入(数字('0x000001E2')&@LF)控制台写入(“测试编号('0x000001e2')-->”)控制台写入(数字(“0x000001e2”)&@LF)控制台写入(“测试编号('0x0000001E2')-->”)控制台写入(编号(“0x0000001E2”)&@LF);大写[成功]控制台写入(“测试编号('0x0000001e2')-->”)控制台写入(编号('0x0000001e2')&@LF);小写[失败]控制台写入(“测试编号('0x0000001F2')-->”)控制台写入(编号(“0x0000001F2”)&@LF)控制台写入(“测试编号('0x0000001f2')-->”)控制台写入(编号('0x0000001f2')&@LF)

注释:4 改变4年前由Jpm提供

  • 所有者设置为Jpm公司
  • 状态更改自新的分配

您好!
修复发送给Jon的问题

注释:5 改变3年前作者:Jon

  • 里程碑设置为3.3.15.4
  • 所有者已从更改下午6点乔恩
  • 分辨率设置为固定的
  • 状态已从更改分配关闭

通过修订修复[12549]版本:3.3.15.4

发表评论的指南:

  • 您不能重新打开票据,但如果您有其他信息需要添加,您仍然可以留下评论。
  • 应就论坛.

有关更多信息,请参阅票务指南的完整版本在这里.

添加注释

修改票据

行动
已关闭所有者仍将是乔恩。
作者


电子邮件地址和用户名可以保存在首选项.

 
注:请参见TracTickets公司有关使用的帮助门票。