为什么StrToInt('X5')在Delphi语言中会返回5?X是某种科学记数还是类似的东西?是否还有其他一些字符也将被转换为Integer?
发布于 2009-05-19 16:34:47
由于不了解Delphi,我敢打赌"X“会导致函数假定其值为十六进制。从0x5 == 5开始,它似乎正常工作。试试X10,看看你能不能回到16岁。
发布于 2009-05-20 09:48:36
在Delphi中,十六进制值用$前缀标记:
a := $10; // => a = 16但由于在一些其他语言(例如C)中,X用于标记十六进制值,因此StrToInt函数同时支持$和X前缀,因此下面的两个代码都返回16:
a := StrToInt('x10'); // => a = 16
a := StrToInt('$10'); // => a = 16发布于 2009-05-19 16:34:09
这是十六进制表示法。尝试XF以查看它返回15。
https://stackoverflow.com/questions/883809
复制相似问题