易语言不支持无符号整数变量的定义,但可以解决,代价是不能直接用核心库的 到文本()和一些运算指令,加减法除外。
有符号的二进制最高位为符号位,1表示负数,0表示正数。
整数型为32二进制位,占用一个符号位,所以它的最大范围为2的31次方,而无符号不用符号位,它的最大范围为2的32次方。
首先了解一下有符号和无符号的数据类型:
字节型
•易语言默认类型:无符号
•有符号取值范围:-128 ~ 127
•无符号取值范围:0 ~ 255
短整数型
•易语言默认类型:有符号
•有符号取值范围:-32768 ~ 32767
•无符号取值范围:0 ~ 65535
整数型
•易语言默认类型:有符号
•有符号取值范围:-2147483648 ~ 2147483647
•无符号取值范围:0 ~ 4294967295
长整数型
•易语言默认类型:有符号
•有符号范围:-9223372036854775808 ~ 9223372036854775807
•无符号范围:0 ~ 18446744073709551615
关于到文本
QQ号采用无符号整数型,它在,TX的游戏内存、TX的通信协yi,就是用整数型的。
因为易语言没有无符号整数型这种说法,导致有些QQ号显示负数。
为了解决这个问题有些人会采用长整数型,硬把整数型写到长整数型低32位里,不是直接 长整数型=整数型 这样赋值就完事了,这种转换最终是为了用到文本()来显示而已。
河马文库