当前位置 : 主页 > 网络编程 > lua >

20180529-1

来源:互联网 收集:自由互联 发布时间:2021-06-23
有一种语言称为lua,里面的数字只有一种类型(number),实际上是双精度浮点数。没有各种位数的整数,如32位、64位整数等。那么关于该语言的说法错误的是? 该语言可以用number类型的
有一种语言称为lua,里面的数字只有一种类型(number),实际上是双精度浮点数。没有各种位数的整数,如32位、64位整数等。那么关于该语言的说法错误的是?
该语言可以用number类型的变量作为数组下标
该语言可以表示任意32位数字整数的数字ID
该语言无法实现32位数字整数的按位与、或、异或运算
该语言可以正常进行双精度浮点数运算

答案B 错选D
(转载)
A 可以用number类型的变量作为数组下标
毫无疑问是正确的。
B是错误的, 该语言可以表示任意32为整数的数组ID 原因是因为:
lua的基本类型number,其实就是用float表示的。 所谓的整数,其实也是用float去表示的, 如lua中的整数100,实际上是float类型100.0,所以lua不能表示32位整数的数组ID,本身没有那么大。
C是正确的
C 该语言无法实现32为数字整数的按位与、或、异或运算 在最基本的库文件里确实没有内置的算法,但是在扩展库中还是存在的比如
require"bit" bit.band(6,4) bit.rshift(6,1)
bit.bor(6,4)
bit.bnot(6)
D 该语言可以正常进行双精度浮点数运算:
这个应该是对的, 因为lua int的内部实现就是通过double实现的。
综上所述,答案应该是B
网友评论