Lua和C的语法差别

摘要:
没有主函数Lua是一种脚本语言,也没有带有固定入口的主函数。当lua解析器解析lua代码文件时,lua解析器逐行解析lua脚本。Print将上述代码保存在a.lua中,然后执行lua.lua。您将看到,当输出除法小心地对c/c++整数进行除法运算时,结果仍然是整数,而lua不是std::cout<<3/5<<endl//在c++中,得到0print(3/5)——在lua中,得到0.6^。Lua的符号含义不同,^代表力量。例如,2^5等于32逻辑假。与Lua不同,只有false和nil表示false,其他表示true。也就是说,0还表示打印时的真locala=0ifat。上面的代码将打印istrue~=表示在c语言中不相同!
  • 没有main函数

Lua是脚本语言,没有固定入口的main函数。当lua解析器解析某个lua代码文件时,lua解析器一样一行的解析lua脚本。

print("Hello lua")

将以上代码保存在a.lua,然后执行lua a.lua,将看到输出

  • 除法要小心

c/c++整数相除时,得到的依旧是整数,而lua则不是

std::cout << 3/5 << endl; // 在C++中,得到0

print(3/5) -- 在lua中,得到0.6
  • ^符号意义不同

在Lua中,^表示乘方,比如2^5等于32

  • 逻辑假不同

在lua中,只有false和nil表示假,其他表示真,也就是说,0也表示真

local a = 0
if a then 
    print("is true")
end

以上代码会打印is true

  • ~=表示不等于

跟c语言里!=不同

  • #操作符

#操作符用来获取长度

print(#"abc")
-- 将输出3
  • 字符串表示更加灵活

在lua中,可以用''、""、[[]]来引用字符串,字符串中遇到特殊字符也可以用进行转义

local a = 'abc'
local b = "abc"
local c = "ab'c"
local d = 'ab"c'
local e = [[
    <html>
        this is "aaa" 'bbb' ....
    </html>
]]
  • 没有continue

免责声明:文章转载自《Lua和C的语法差别》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇windows获取系统网络流量从零开始的野路子React/Node(7)将Swagger(OpenAPI)运用于后端API下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

如何利用MATLAB并行计算缩短程序运行时间

本来CPU就是双核,不过以前一直注重算法,没注意并行计算的问题。今天为了在8核的dell服务器上跑程序才专门看了一下。本身写的程序就很容易实现并行化,因为beamline之间并没有考虑相互作用。等于可以拆成n个线程并行,要是有550核的话,估计1ms就算完了。。。 先转下网上找到的资料。 一、Matlab并行计算原理梗概Matlab的并行计算实质还是主从...

python基础语法_2基本数据类型

http://www.runoob.com/python3   大纲 Number(数字) String(字符串) List(列表) Tuple(元组) Sets(集合) Dictionarys(字典) python数据类型转换 正文 Number(数字) Python3 支持 int、float、bool、complex(复数)。 在Python...

Java编程语言基础 第三章 我行我素换购

package cn.save; import java.util.Scanner; public class Myshop { public static void main(String[] args) { System.out.println(" " + "欢迎使用我行我素购物管理系统"); Scanner input = new Scanner(S...

mac中怎么安装python3

简单介绍Mac下使用HomeBrew 安装Python 3.*版本并设置为默认值 1、首先查看Mac自带的python,可以看到是2.7.10的版本 2、查看python3的安装包 brew search python3 3、安装python3 1 brew install python3 可以看到python3的实际安装目录是/usr/local/Cel...

lua工具库penlight--02表和数组

类Python的List lua的优美之处在于把数组和关联数组都用table实现了(Python中叫list和dict,C++中叫vector和map)。 一般我们把数字索引的table叫做list。penlight里的List模仿了Python,看起来从Python借鉴是个好主意。 下面是一个List的例子,List实现了__tostirng,因此可以输...

用jedis执行lua脚本

1.Redis 脚本 Redis 脚本使用 Lua 解释器来执行脚本。 Redis 2.6 版本通过内嵌支持 Lua 环境。执行脚本的常用命令为EVAL。 下表列出了 redis 脚本常用命令: 序号 命令及描述 1 EVAL script numkeys key [key ...] arg [arg ...]执行 Lua 脚本。 2 EVAL...