[英]Why does StrToInt('X5') returns 5 in Delphi?
為什么StrToInt('X5')在Delphi中返回5? X是一些科學記數法還是類似的東西? 是否還有一些其他字符也將轉換為Integer?
不知道Delphi,我打賭“X”會導致函數假設值是十六進制的。 從0x5 == 5,它似乎工作。 試試X10,看看你是否回來了16。
在Delphi中,十六進制值用$前綴標記:
a := $10; // => a = 16
但由於在其他一些語言(例如C)中X用於標記十六進制值,因此StrToInt函數同時支持$和X前綴,因此下面的兩個代碼都返回16:
a := StrToInt('x10'); // => a = 16
a := StrToInt('$10'); // => a = 16
這是十六進制表示法。 試試XF看它返回15。
可能是十六進制表示法。
X表示后面的數字是十六進制(0-9 + AF)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.