国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > 綜合 > 正文

Lua教程(二):語法約定

2024-07-21 23:04:25
字體:
來源:轉載
供稿:網友

Lua 中用到的 名字(也稱作 標識符)可以是任何非數字開頭的字母、數字、下劃線組成的字符串。 這符合幾乎所有編程語言中關于名字的定義。 (字母的定義依賴于當前環境:系統環境中定義的字母表中的字母都可以被用于標識符。) 標識符用來命名變量,或作為表的域名。

下面的關鍵字是保留的,不能用作名字:

 

復制代碼 代碼如下:

and       break     do        else      elseif

 

end       false     for       function  if

in        local     nil       not       or

repeat    return    then      true      until     while

 

Lua 是一個大小寫敏感的語言: and 是一個保留字,但是 And 和 AND 則是兩個不同的合法的名字。 一般約定,以下劃線開頭連接一串大寫字母的名字(比如 _VERSION)被保留用于 Lua 內部全局變量。

下面這些是其它的 token :

復制代碼 代碼如下:

+     –     *     /     %     ^     #

 

==    ~=    <=    >=    <     >     =

(     )     {     }     [     ]

;     :     ,     .     ..    …

 

字符串既可以用一對單引號引起,也可以是雙引號,里面還可以包含類似 C 的轉義符: ‘/a' (響鈴), ‘/b' (退格), ‘/f' (表單), ‘/n' (換行), ‘/r' (回車), ‘/t' (橫向制表), ‘/v' (縱向制表), ‘//' (反斜杠), ‘/”‘ (雙引號), 以及 ‘/” (單引號)。 而且,如果在一個反斜杠后跟了一個真正的換行符,其結果就是在字符串中產生一個換行符。 我們還可以用反斜杠加數字的形式 /ddd 來描述一個字符。這里, ddd 是一串最多三位的十進制數字。(注意,如果需要在這種描述方法后接一個是數字的字符, 那么反斜杠后必須寫滿三個數字。)Lua 中的字符串可以包含任何 8 位的值。包括用 ‘/0′ 表示的零。

只有在你需要把不同的引號、換行、反斜杠、或是零結束符這些字符置入字符串時, 你才必須使用轉義符。別的任何字符都可以直接寫在文本里。(一些控制符可以會影響文件系統造成某些問題, 但是不會引起 Lua 的任何問題。)

字符串還可以用一種長括號括起來的方式定義。 我們把兩個正的方括號間插入 n 個等號定義為第 n 級正長括號。 就是說,0 級正的長括號寫作 [[ , 一級正的長括號寫作 [=[ ,如此等等。 反的長擴展也作類似定義; 舉個例子,4 級反的長括號寫作 ]====] 。 一個長字符串可以由任何一級的正的長括號開始,而由第一個碰到的同級反的長括號結束。 整個詞法分析過程將不受分行限制,不處理任何轉意符,并且忽略掉任何不同級別的長括號。 這種方式描述的字符串可以包含任何東西,當然特定級別的反長括號除外。

另一個約定是,當正的長括號后面立即跟了一個換行符, 這個換行符就不包含在這個字符串內。 舉個例子,假設一個系統使用 ASCII 碼 (這時,'a' 編碼為 97 ,換行符編碼為 10 ,'1′ 編碼為 49 ), 下面五種方式描述了完全相同的字符串:

復制代碼 代碼如下:

a = ‘alo/n123″‘

 

a = “alo/n123/”"

a = ‘/97lo/10/04923″‘

a = [[alo

123"]]

a = [==[

alo

123"]==]


數字常量可以分兩部分寫,十進制底數部分和十進制的指數部分。指數部分是可選的。 Lua 也支持十六進制整數常量,只需要在前面加上前綴 0x 。 下面是一些合法的數字常量的例子:
復制代碼 代碼如下:

3   3.0   3.1416   314.16e-2   0.31416E1   0xff   0×56

注釋可以在除字符串內的任何地方是以兩橫 (–) 開始。 如果跟在兩橫后面的不是一個長括號,這就是一個短注釋,它的作用范圍直到行末; 否則就是一個長注釋,其作用范圍直到遇到反的長括號。 長注釋通常被用來臨時屏蔽代碼塊。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 揭西县| 台前县| 苏尼特右旗| 临沂市| 鹿邑县| 东莞市| 伊宁市| 滨州市| 广南县| 沿河| 五常市| 方城县| 金秀| 奎屯市| 新龙县| 平利县| 新晃| 黄骅市| 平陆县| 梁山县| 庄浪县| 高唐县| 毕节市| 南靖县| 卓资县| 贡山| 贺州市| 巴青县| 前郭尔| 合作市| 惠来县| 孝义市| 怀来县| 杭锦旗| 麻栗坡县| 色达县| 佛学| 肥西县| 璧山县| 延边| 莎车县|