Lua 篇(一)— 安装运行Hello World

目录

  • 前言
  • 一、Lua 是什么?
  • 二、Lua和C#的区别
  • 三、安装 Lua
    • Linux 系统上安装
    • Mac OS X 系统上安装
    • Window 系统上安装
    • emmylua+Rider 安装(推荐)
  • 四、Lua学习资料


前言

Lua 是一种轻量级的嵌入式脚本语言,它可以与 C 语言无缝集成,提供了强大的编程能力和灵活的语法。Lua 在很多领域都有广泛的应用,比如游戏开发,网络编程,数据分析等。本文就介绍了 Lua 的安装和运行


一、Lua 是什么?

Lua 是一种由巴西里约热内卢天主教大学的 Roberto Ierusalimschy,Waldemar Celes 和 Luiz Henrique de Figueiredo 开发的开源语言,它建立在 C 语言之上,可以作为一个独立的语言,也可以作为一个嵌入式的库,与其他语言交互。Lua 的名字来自于葡萄牙语的“月亮”。

Lua 的设计目标是简单,小巧,高效,可移植,易扩展。Lua 的语法借鉴了很多其他语言,比如 Pascal,Perl,Python 等,但也有自己的特色,比如使用表(table)作为唯一的数据结构,支持多重赋值,使用冒号(:)作为方法调用的语法糖,支持协程(coroutine)等。

Lua 的应用领域非常广泛,它可以用来开发桌面应用,移动应用,嵌入式系统,网络服务器,数据库,游戏等。Lua 在游戏开发中尤为突出,很多知名的游戏都使用了 Lua 作为脚本语言,比如 World of Warcraft,Angry Birds,Garry’s Mod 等。

二、Lua和C#的区别

Lua可以在几乎所有的操作系统和平台进行编译运行
可以很方便的更新代码
更新了代码后,可以直接在手机上运行,不需要重新安装(后续的热更新方案)
C#只能在特定的操作系统中进行编译成dll文件,然后打包进安装包在其他平台(Android、iOS)运行
在移动平台上不能更新替换已有的dll文件,除非重新下载安装包

三、安装 Lua

Linux 系统上安装

Linux & Mac上安装 Lua 安装非常简单,只需要下载源码包并在终端解压编译即可,本文使用了5.3.0版本进行安装:

curl -R -O http://www.lua.org/ftp/lua-5.3.0.tar.gz
tar zxf lua-5.3.0.tar.gz
cd lua-5.3.0
make linux test
make install

Mac OS X 系统上安装

curl -R -O http://www.lua.org/ftp/lua-5.3.0.tar.gz
tar zxf lua-5.3.0.tar.gz
cd lua-5.3.0
make macosx test
make install

接下来我们创建一个 HelloWorld.lua 文件,代码如下:

print("Hello World!")

执行以下命令:

$ lua HelloWorld.lua

输出结果为:

Hello World!

Window 系统上安装

window 下你可以使用一个叫 “SciTE” 的 IDE环 境来执行 lua 程序,下载地址为:

Github 下载地址:https://github.com/rjpcomputing/luaforwindows/releases

双击安装后即可在该环境下编写 Lua 程序并运行。

emmylua+Rider 安装(推荐)

下载安装并激活好rider(本次版本基于:JetBrains Rider 2022.3.3)

从插件商店中安装emmylua
在这里插入图片描述
在unity中设置好,使用rider打开项目即可
在这里插入图片描述

rider中添加关键字符适配
rider->设置->编辑器->文件类型->找到Lua language file

添加 .lua.txt .lua 识别文件后缀
在这里插入图片描述
新建调试配置Lua Debugger
在这里插入图片描述
在这里插入图片描述
Connection选项选择Tcp (Debugger connect IDE)。别选错了,这步很重要!
在这里插入图片描述

四、Lua学习资料

1、《Programming in Lua》第四版
2、http://www.runoob.com/lua/lua-tutorial.html
3、Lua官网:www.lua.org

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/508684.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

关于Facebook,你真的足够了解吗?

一、前言 说到站外推广,各位跨境卖家都不陌生,当站内流量较难获取时,总会想着法子从外部获取流量,而Facebook形式的站外推广各位卖家肯定也耳熟能详,低投入高回报一直是服务商主打的“性价比首选”。 二、Facebook基…

PclSharp1.12.0--半径滤波

一、半径滤波 原理&#xff1a;对整个输入迭代一次&#xff0c;对于每个点进行半径R邻域搜索&#xff0c;如果邻域点的个数低于某一阈值&#xff0c;则该点将被视为噪声点并被移除。 二、代码部分 注&#xff1a;测试代码均使用PclSharp1.12.0库 /// <summary> …

【已解决】Word文档无法复制怎么办?

无法复制Word文档里面的内容&#xff0c;有可能是这3个原因造成的&#xff0c;一起来看看如何解决吧。 原因1&#xff1a;Word程序出现故障 Word程序出现故障&#xff0c;有可能会导致打不开Word文档&#xff0c;或者打开后无法进行复制粘贴等操作&#xff0c;可以试试关闭Wor…

如何合理布局子图--确定MATLAB的subplot子图位置参数

确定MATLAB的subplot子图位置参数 目录 确定MATLAB的subplot子图位置参数摘要1. 问题描述2. 计算过程2.1 确定子图的大小和间距2.2 计算合适的figure大小2.3 计算每个子图的position数据 3. MATLAB代码实现3.1 MATLAB代码3.2 绘图结果 4. 总结 摘要 在MATLAB中&#xff0c;使用…

复现nerfstudio并训练自己制作的数据集

网站&#xff1a;安装 - nerfstudio GitHub - nerfstudio-project/nerfstudio&#xff1a;NeRF 的协作友好工作室 安装之前要确保电脑上已经有CUDA11.8或以上版本&#xff08;更高版本的可以安装11.8的toolkit&#xff09; 创建环境 conda create --name nerfstudio -y pyt…

【NR 定位】3GPP NR Positioning 5G定位标准解读(三)

目录 前言 5 NG-RAN UE定位架构 5.1 架构 5.2 UE定位操作 5.3 NG-RAN定位操作 5.3.1 通用NG-RAN定位操作 5.3.2 OTDOA定位支持 5.3.3 广播辅助信息支持 5.3.4 NR RAT相关定位支持 5.4 NG-RAN中与UE定位相关的元素功能描述 5.4.1 用户设备&#xff08;UE&#xff09; …

【牛客面试必刷TOP101】Day25.BM38 在二叉树中找到两个节点的最近公共祖先和BM40 重建二叉树

作者简介&#xff1a;大家好&#xff0c;我是未央&#xff1b; 博客首页&#xff1a;未央.303 系列专栏&#xff1a;牛客面试必刷TOP101 每日一句&#xff1a;人的一生&#xff0c;可以有所作为的时机只有一次&#xff0c;那就是现在&#xff01;&#xff01;&#xff01;&…

爬虫的一些小技巧总结

一、在爬虫中&#xff0c;爬取的数据类型如下 1.document:返回的是一个HTML文档 2.png:无损的图片&#xff0c;jpg:压缩后的图片,wbep:有损压缩&#xff0c;比png差&#xff0c;比jpg好 3.avgxml图像编码字符串 4.script:脚本文件&#xff0c;依据一定格式编写的可执行的文…

【kubernetes】关于k8s集群如何将pod调度到指定node节点?

目录 一、k8s的watch机制 二、scheduler的调度策略 Predicate&#xff08;预选策略&#xff09; 常见算法&#xff1a; priorities&#xff08;优选策略&#xff09;常见的算法有&#xff1a; 三、k8s的标签管理之增删改查 四、k8s的将pod调度到指定node的方法 方案一&am…

Vue2->3

Vue2->3 认识Vue31. Vue2 选项式 API vs Vue3 组合式API2. Vue3的优势 使用create-vue搭建Vue3项目1. 认识create-vue2. 使用create-vue创建项目 熟悉项目和关键文件组合式API - setup选项1. setup选项的写法和执行时机2. setup中写代码的特点3. <script setup>语法糖…

【Proteus仿真】【51单片机】坐姿矫正提醒器设计

文章目录 一、功能简介二、软件设计三、实验现象联系作者 一、功能简介 本项目使用Proteus8仿真51单片机控制器&#xff0c;使用LCD1602液晶显示模块、HC-SR04超声波模块、蜂鸣器、按键、人体红外传感器等。 主要功能&#xff1a; 系统运行后&#xff0c;LCD1602显示超声波检…

如何选择O2OA(翱途)开发平台的部署架构?

概述 O2OA(翱途)开发平台[下称O2OA开发平台或者O2OA]支持公有云&#xff0c;私有云和混合云部署&#xff0c;也支持复杂的网络结构下的分布式部署。本篇主要介绍O2OA(翱途)开发平台支持的部署环境以及常用的集群部署架构。 软硬件环境说明 支持的云化平台&#xff1a; 华为云…