《Lua程序设计》之 数值

《Lua程序设计》之 数值,第1张

在Lua 5.2及之前的版本,所有数值都以双精度浮点格式表示,从5.3版本开始,Lua语言的number分为integer的64位整型和被称为float的双精度浮点型,若想要32位的整型和单精度浮点类型,可以将Lua 5.3编译为精简Lua(Small Lua)模式.

可以使用%a参数进行格式化输出,如:

这种格式很难阅读,但是可以保留所有浮点数的精度,并且比十进制转换速度更快

// 区分整数和浮点数,由于5.3版本之前没有整数的概念,所以math.floor永远返回整数,// 的 *** 作数只要有一个浮点数,则向下取整返回浮点数

取模运算的定义:

由此可知,取模和取余数差不多,当想要一个值不超过某个范围的时候,就对该值进行取模, 在整数的情况下, a % b 取模的值永远在[1,b-1]范围内,即 5 % 3的取模结果在[1,3]之间

Lua语言的关系运算六种

标准数学库math,包括三角函数(sin,cos,tan,asin等)、指数函数、取整函数、最大和最小函数max和min,random以及常量pi和huge(最大可表示数值,在大多数平台上代表inf)

math.random

math.randomseed 用于设置伪随机数发生器的种子,看例子就明白了了

math.randomseed每次设置一样的值,则math.random就会生成一样的随机数,不管math.random带不带参数。

三个取整函数:

floor 向负无穷取整

ceil向正无穷取整

modf向0取整,并会返回小数部分作为第二个结果

如果想将数值x向最近的整数取整,这个问题没看懂??????

数学库中的常量定义了整型值的最大值math.maxinteger和最小值math.mininteger

这段内容也没完全看懂?????

整型转行成浮点型

浮点型转行成整型

可以充分利用math.tointeger函数来判断一个数值是否为整数

从上到下,优先级从高到低

在二元运算符中,除了幂运算和连接 *** 作符是右结合外,其他都是左结合

Lua 5.3 支持的最大整数为2^63,而Lua 5.2支持的最大整数为2^53,由于5.2及以下版本没有整数,所以跟整数相关的函数都不支持,如math.type()、math.maxinteger、math.mininteger、math.tointeger等

程序开发中扩展语言有很多,比如lua程序设计。

Lua 是一门扩展式程序设计语言,被设计成支持通用过程式编程,并有相关数据描述设施。 同时对面向对象编程、函数式编程和数据驱动式编程也提供了良好的支持。 它作为一个强大、轻量的嵌入式脚本语言,可供任何需要的程序使用。 Lua 由 clean C(标准 C 和 C++ 间共通的子集) 实现成一个库。

作为一门扩展式语言,Lua 没有 "main" 程序的概念: 它只能 嵌入 一个宿主程序中工作, 该宿主程序被称为 被嵌入程序 或者简称 宿主 。 宿主程序可以调用函数执行一小段 Lua 代码,可以读写 Lua 变量,可以注册 C 函数让 Lua 代码调用。 依靠 C 函数,Lua 可以共享相同的语法框架来定制编程语言,从而适用不同的领域。 Lua 的官方发布版包含一个叫做 lua 的宿主程序示例, 它是一个利用 Lua 库实现的完整独立的 Lua 解释器,可用于交互式应用或批处理。

Lua 是一种轻量小巧的脚本语言,用标准C语言编写并以源代码形式开放, 其设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能。

设计目的

其设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能。

轻量级: 它用标准C语言编写并以源代码形式开放,编译后仅仅一百余K,可以很方便的嵌入别的程序里。

可扩展: Lua提供了非常易于使用的扩展接口和机制:由宿主语言(通常是C或C++)提供这些功能,Lua可以使用它们,就像是本来就内置的功能一样。

其它特性:

支持面向过程(procedure-oriented)编程和函数式编程(functional programming);

自动内存管理;只提供了一种通用类型的表(table),用它可以实现数组,哈希表,集合,对象;

语言内置模式匹配;闭包(closure);函数也可以看做一个值;提供多线程(协同进程,并非 *** 作系统所支持的线程)支持;

通过闭包和table可以很方便地支持面向对象编程所需要的一些关键机制,比如数据抽象,虚函数,继承和重载等。

Lua是一个扩展式程序设计语言,它被设计成支持通用的过程式编程,并有相关数据描述的设施。

Lua也能对面向对象编程,函数式编程,数据驱动式编程提供很好的支持。它可以作为一个强大、轻量的脚本语言,供任何需要的程序使用。

Lua以一个用CleanC写成的库形式提供。(所谓CleanC,指的ANSIC和C++中共通的一个子集)。

LUA脚本编程器主要特点

1、可扩展性。Lua的扩展性非常卓越,以至于很多人把Lua用作搭建领域语言的工具。Lua被设计为易于扩展的,可以通过Lua代码或者C代码扩展,Lua的很多功能都是通过外部库来扩展的。Lua很容易与C/C++、Java、Fortran、Smalltalk、Ada,以及其他语言接口。

2、简单。Lua本身简单,小巧;内容少但功能强大,这使得Lua易于学习,很容易实现一些小的应用。他的完全发布版(代码、手册以及某些平台的二进制文件)仅用一张软盘就可以装得下。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/10984526.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-12
下一篇 2023-05-12

发表评论

登录后才能评论

评论列表(0条)

保存