国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

lua基礎語法篇一

這篇具有很好參考價值的文章主要介紹了lua基礎語法篇一。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

打印

print("hello world")

注釋

  • 單行注釋
  • 多行注釋
-- 這是單行注釋

--[[
這是多行注釋
]]

賦值

s="Hello World"

-- 多重賦值
a,b="String a","String b"

-- 交換值,類似python
a,b="String a","String b"
a,b=b,a

數(shù)據(jù)類型

Lua有8種基本類型,如下表

類型 說明
nil 空值,只包含一個nil
boolean 布爾類型
number 數(shù)值類型
string 字符串,用單引號或雙引號表示
table Lua中的表,其實是一個關聯(lián)數(shù)組,數(shù)組的索引可以是數(shù)字、字符串或表類型
function 函數(shù),由C或Lua編寫的函數(shù)
userdata 表示存儲在變量中的c數(shù)據(jù)結構
thread 線程類型,表示執(zhí)行的獨立線路,用于執(zhí)行協(xié)同程序
print(type("Hello world"))      --> string
print(type(10.4*3))             --> number
print(type(print))              --> function
print(type(type))               --> function
print(type(true))               --> boolean
print(type(nil))                --> nil
print(type({}))                 --> table
print(type(io.stdin))           --> userdata

nil(空)

nil表示一種沒有任何有效值

print(type(a))

給全局變量和table中某一變量賦值為nil,等同于刪除掉。

boolean(布爾)

  • boolean類型只有兩個可選值,true(真)和false(假)。
  • 在Lua中,falsenil是假,其他的都為真。

number(數(shù)字)

Lua默認只有一種number類型,類似C語言中的double(雙精度)

string(字符串)

字符串由一對雙引號或單引號表示。

-- 字符串有以下四種表示方式
s='string'
s="String"
s=[[String]]
s=[==[String]==]

字符串連接采用..操作符

print("a".."b")
-- ab

使用#放在字符串前面來計算其長度,如下:

s="Hello world"
print(#s)
--11

table(表)


-- 創(chuàng)建一個空的表
local tb={}

-- 初始化表
local tb1={"a","b","c"}

  • 不同于其他語言,Lua的索引從1開始
  • table不會固定大小,新增數(shù)據(jù)table長度自動增加,沒初始化的table都是nil

function(函數(shù))

在 Lua 中,函數(shù)是被看作是"第一類值(First-Class Value)",函數(shù)可以存在變量里:

function factorial1(n)
    if n == 0 then
        return 1
    else
        return n * factorial1(n - 1)
    end
end
print(factorial1(5))
factorial2 = factorial1
print(factorial2(5))

function 可以以匿名函數(shù)(anonymous function)的方式通過參數(shù)傳遞:

function anonymous(tab, fun)
    for k, v in pairs(tab) do
        print(fun(k, v))
    end
end
tab = { key1 = "val1", key2 = "val2" }
anonymous(tab, function(key, val)
    return key .. " = " .. val
end)

thread(線程)

在 Lua 里,最主要的線程是協(xié)同程序(coroutine)。它跟線程(thread)差不多,
擁有自己獨立的棧、局部變量和指令指針,可以跟其他協(xié)同程序共享全局變量和其他大部分東西。
線程跟協(xié)程的區(qū)別:線程可以同時多個運行,而協(xié)程任意時刻只能運行一個,
并且處于運行狀態(tài)的協(xié)程只有被掛起(suspend)時才會暫停。

userdata(自定義類型)

userdata 是一種用戶自定義數(shù)據(jù),用于表示一種由應用程序或 C/C++ 語言庫所創(chuàng)建的類型,
可以將任意 C/C++ 的任意數(shù)據(jù)類型的數(shù)據(jù)(通常是 struct 和 指針)存儲到 Lua 變量中調(diào)用。

變量

Lua 變量有三種類型:

  • 全局變量默認情況下,Lua中所有的變量都是全局變量
  • 局部變量使用local顯式聲明在函數(shù)內(nèi)的變量,以及函數(shù)的參數(shù),都是局部變量。在函數(shù)外即使用local去聲明,它的作用域也是當前的整個文件,這相當于一個全局變量。
  • 表中的域

注意,變量的默認值均為nil。Lua語言不區(qū)分未初始化變量和被賦值為nil的變量,因此全局變量無須聲明即可使用。「在Lua中,應盡可能使用局部變量」,這有兩個好處:

  1. 避免命名沖突
  2. 訪問局部變量的速度比全局變量更快
a = 5               -- 全局變量
local b = 5         -- 局部變量

function joke()
    c = 5           -- 全局變量
    local d = 6     -- 局部變量
end

a, b, c = 0, 2, 7   -- Lua支持多變量賦值

本文由【產(chǎn)品經(jīng)理不是經(jīng)理】gzh同步發(fā)布,歡迎關注文章來源地址http://www.zghlxwxcb.cn/news/detail-430827.html

到了這里,關于lua基礎語法篇一的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內(nèi)容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • 使用 GNU 匯編語法編寫 Hello World 程序的三種方法

    使用 GNU 匯編語法編寫 Hello World 程序的三種方法

    本篇我們使用匯編來寫一個經(jīng)典的? Hello world ?程序。 運行環(huán)境: OS:Ubuntu 18.04.5 LTS x86-64 gcc:version 4.8.5 在用戶空間編寫匯編程序輸出字符串,有三種方法: 調(diào)用C庫函數(shù)? printf 使用軟中斷? int 0x80 使用? syscall 系統(tǒng)調(diào)用 下面對三種方法,分別進行說明。 為了更好的理解匯

    2024年02月06日
    瀏覽(39)
  • 【python基礎】編寫/運行hello world項目

    【python基礎】編寫/運行hello world項目

    編程界每種語言的第一個程序往往都是輸出hello world。因此我們來看看,如何用Python輸出hello world。 1.如果你是初學者,main.py中的代碼暫時是無法看懂的,所以可以把main中的源代碼直接刪除。如下所示 這里我們要學習python的第一個知識點, print輸出函數(shù)。 語法格式之一:p

    2024年02月06日
    瀏覽(30)
  • HarmonyOS鴻蒙學習基礎篇 - 運行第一個程序 Hello World

    HarmonyOS鴻蒙學習基礎篇 - 運行第一個程序 Hello World

    下載與安裝DevEco Studio ? ? ?古話說得好,“磨刀不誤砍柴工”,對于HarmonyOS應用開發(fā),我們首先得確保工具齊全。這就好比要進行HarmonyOS應用開發(fā),我們需要確保已經(jīng)安裝了DevEco Studio,這是HarmonyOS的一站式集成開發(fā)環(huán)境(IDE)。 ? ? ?下面我們就以在Windows系統(tǒng)上安裝DevEco

    2024年01月23日
    瀏覽(18)
  • 機器人CPP編程基礎-01第一個程序Hello World

    機器人CPP編程基礎-01第一個程序Hello World

    很多課程先講C/C++或者一些其他編程課,稱之為基礎課程。然后到本科高年級進行機器人專業(yè)課學習,這樣時間損失非常大,效率非常低。 C++/單片機/嵌入式/ROS等這些編程基礎可以合并到一門課中進行實現(xiàn),這些素材已經(jīng)迭代三輪以上,全部公開,需要可以參考,不需要,我

    2024年02月13日
    瀏覽(23)
  • 編程筆記 Golang基礎 007 第一個程序:hello world 使用Goland

    編程筆記 Golang基礎 007 第一個程序:hello world 使用Goland

    開始在Goland環(huán)境中編程go語言代碼啦。 打開GoLand軟件。 選擇 “File”(文件)菜單,然后點擊 “New Project”(新建項目)或使用快捷鍵 Ctrl+Shift+A 并搜索 “New Project”。 在新建項目向導中,選擇 “Go” 并點擊 “Next” 按鈕。 配置項目設置: 為項目選擇一個合適的保存位置。

    2024年02月20日
    瀏覽(24)
  • 【Python基礎篇】從Hello, world到函數(shù)幾分鐘看完就都會了~

    【Python基礎篇】從Hello, world到函數(shù)幾分鐘看完就都會了~

    大家好,我是辣條哥~ Python是一種高級編程語言,易于學習和使用。以下是Python入門基礎的一小部分: 首先需要從官方網(wǎng)站下載和安裝Python。安裝過程很簡單,只需按照安裝向導的步驟進行操作即可。 如果實在不會可以在文末底下找到辣條哥名片,直接找辣條哥拿安裝包以及

    2023年04月25日
    瀏覽(21)
  • 零基礎快速上手HarmonyOS ArkTS開發(fā)1---運行Hello World、ArkTS開發(fā)語言介紹

    零基礎快速上手HarmonyOS ArkTS開發(fā)1---運行Hello World、ArkTS開發(fā)語言介紹

    在華為開發(fā)者大會2023年8月4日(HDC.Together)大會上,HarmonyOS?4正式發(fā)布,其實在2021年那會學習了一點鴻蒙的開發(fā): 不過因為現(xiàn)在的鴻蒙手機完全兼容Android應用,所以學習動力也不是很足,一直就擱置了,直到今年華為官方出了這么一則消息才讓我對于學習它有一種緊迫感了,如

    2024年02月05日
    瀏覽(31)
  • 【C快學-C語言程序設計(基礎篇)】從VSCode中使用C編寫我的第一個Hello world

    【C快學-C語言程序設計(基礎篇)】從VSCode中使用C編寫我的第一個Hello world

    簡介:本專欄是一個C語言基礎入門知識學習的一個專欄 面向:廣大C友 工具:VSCODE 博主:一個友好且寵粉的博主,送書活動小專欄,不定期抽獎送圖書給粉絲 社區(qū):??山魚社區(qū) 我這里是使用超級強大的vscode來進行C語言的學習的,因為vscode有著許多好用且方便的插件,能夠

    2024年02月13日
    瀏覽(93)
  • ASIC-WORLD Verilog(5)基礎語法下篇

    ASIC-WORLD Verilog(5)基礎語法下篇

    ????????在自己準備寫一些簡單的verilog教程之前,參考了許多資料----asic-world網(wǎng)站的這套verilog教程即是其一。這套教程寫得極好,奈何沒有中文,在下只好斗膽翻譯過來(加了自己的理解)分享給大家。 ? ? ? ? 這是網(wǎng)站原文:http://asic-world.com/verilog/veritut.html ??????

    2023年04月17日
    瀏覽(21)
  • ASIC-WORLD Verilog(4)基礎語法上篇

    ????????在自己準備寫一些簡單的verilog教程之前,參考了許多資料----asic-world網(wǎng)站的verilog教程即是其一。這套教程寫得極好,奈何沒有中文,在下只好斗膽翻譯過來(加了自己的理解)分享給大家。 ? ? ? ? 這是網(wǎng)站原文:http://asic-world.com/verilog/veritut.html ????????這

    2023年04月10日
    瀏覽(23)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包